-
-
Notifications
You must be signed in to change notification settings - Fork 18.2k
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
Correct assert_frame_equal doc string #22552
Conversation
Correct default values in assert_frame_equal
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.
Can you check that this passes the docstring validation script?
|
Codecov Report
@@ Coverage Diff @@
## master #22552 +/- ##
=======================================
Coverage 92.04% 92.04%
=======================================
Files 169 169
Lines 50787 50787
=======================================
Hits 46745 46745
Misses 4042 4042
Continue to review full report at Codecov.
|
pandas/util/testing.py
Outdated
check_dtype : bool, default True | ||
Whether to check the DataFrame dtype is identical. | ||
check_index_type : bool / string {'equiv'}, default False | ||
check_index_type : bool / string {'equiv'}, default 'equiv' |
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 think what we've been using in these cases is {'equiv'} or bool
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.
IMO that is more confusing. e.g. it might imply I pass a set. I'm not sure it's worth a special case for when there is only one possible string value.
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.
what is your suggestion, just 'equiv' or bool, default 'equiv'
or something else? Besides being more consistent for the user, using the curly brackets in all cases would simplify parsing the types and adding validation and extracting stats. But if you are strongly in favor of not using them, I'm happy to merge this with it now, and see later on what's best when we implement that validation.
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 think as it is above is good. It's maybe a little verbose but is very clear.
check_index_type : bool / string {'equiv'}, default 'equiv'
Happy to revisit if a standard emerges.
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 the standard here: https://pandas.pydata.org/pandas-docs/stable/contributing_docstring.html#parameter-types
If you can use the first format I suggested, that would be great.
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. I have used your suggestion.
Hello @pablojim! Thanks for updating the PR. Cheers ! There are no PEP8 issues in this Pull Request. 🍻 Comment last updated on September 03, 2018 at 11:52 Hours UTC |
pandas/util/testing.py
Outdated
check_dtype : bool, default True | ||
Whether to check the DataFrame dtype is identical. | ||
check_index_type : bool / string {'equiv'}, default False | ||
check_index_type : bool / string {'equiv'}, default 'equiv' |
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.
what is your suggestion, just 'equiv' or bool, default 'equiv'
or something else? Besides being more consistent for the user, using the curly brackets in all cases would simplify parsing the types and adding validation and extracting stats. But if you are strongly in favor of not using them, I'm happy to merge this with it now, and see later on what's best when we implement that validation.
pandas/util/testing.py
Outdated
See Also | ||
-------- | ||
assert_series_equal: equivalent method for asserting Series equality | ||
DataFrame.equals: check DataFrame equality |
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.
Do you think it makes sense adding a example?
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 not sure an example is particularly useful in this case.
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.
We've got users of all levels, and things like comparing dataframes with different types are worth showing with examples.
Besides that, can you add a space before the colons in the see also section, capitalize the first letter of the description, and finish the description with a period? If you generate the html ./doc/make.py html --single pandas.util.testing.assert_frame_equal
, I don't think without the space this is being rendered correcty.
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.
Added examples and corrected formatting as mentioned.
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.
There are formatting issues, and I think examples, and also an extended summary that explains that this is mainly used in unit tests, would make the docstring much more useful to users.
pandas/util/testing.py
Outdated
See Also | ||
-------- | ||
assert_series_equal: equivalent method for asserting Series equality | ||
DataFrame.equals: check DataFrame equality |
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.
We've got users of all levels, and things like comparing dataframes with different types are worth showing with examples.
Besides that, can you add a space before the colons in the see also section, capitalize the first letter of the description, and finish the description with a period? If you generate the html ./doc/make.py html --single pandas.util.testing.assert_frame_equal
, I don't think without the space this is being rendered correcty.
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.
lgtm, great changes. Thanks @pablojim
Correct default values in assert_frame_equal doc string