-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Added paragraph on creating DataFrame from list of namedtuples #35507
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks @sjvrijn
Some comments below.
Could add an example to illustrate that the column names are taken from the first namedtuple
, whatever the field names of the later tuples, such as here
In [8]: pd.DataFrame([(0, 0), Point(1, 2)])
Out[8]:
0 1
0 0 0
1 1 2
but up to you - I don't feel strongly
doc/source/user_guide/dsintro.rst
Outdated
.. ipython:: python | ||
|
||
from collections import namedtuple | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you have a trailing whitespace here
|
||
from collections import namedtuple | ||
|
||
Point = namedtuple('Point', 'x y') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also indent problem
|
||
.. ipython:: python | ||
|
||
from collections import namedtuple |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CI Checks report a problem with the indent here
doc/source/user_guide/dsintro.rst
Outdated
|
||
Point = namedtuple('Point', 'x y') | ||
|
||
pd.DataFrame([Point(0, 0), Point(0, 3), Point(2, 3)]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also indent problem
|
||
pd.DataFrame([Point(0, 0), Point(0, 3), Point(2, 3)]) | ||
|
||
Point3D = namedtuple('Point3D', 'x y z') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also indent problem
|
||
Point3D = namedtuple('Point3D', 'x y z') | ||
|
||
pd.DataFrame([Point3D(0, 0, 0), Point3D(0, 3, 5), Point(2, 3)]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also indent problem
doc/source/user_guide/dsintro.rst
Outdated
From a list of namedtuples | ||
~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
The first namedtuple will be used to determine the columns of the DataFrame. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I might write:
The field names of the first ``namedtuple`` in the list determine the columns of the ``DataFrame``.
The remaining namedtuples (or tuples) are simply unpacked and their values are fed
into the rows of the ``DataFrame``. If any of those tuples is shorter than the first ``namedtuple``
then the later columns in the corresponding row are marked as missing values or, in case
it is longer than the first ``namedtuple``, a ``ValueError`` is raised.
no |
@arw2019 Thanks for the suggestions, I've updated the text and one of the examples. I'm confused about the indentation though, I've checked that it consists of 4 spaces, and throughout the file it's a mix of 3- and 4-space indentation actually... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm confused about the indentation though, I've checked that it consists of 4 spaces, and throughout the file it's a mix of 3- and 4-space indentation actually...
I got that from the CI checks. Looking at them now I think you're good
There's one failing test - definitely nothing to do with this PR since you only touched the docs. Try merging with master and once the checks are green you're good to go
thanks @sjvrijn |
Is a whatsnew entry necessary for this PR?