sak*_*uis 7 python dataframe pandas
for i in str_list: #str_list is a set contain some strings
df.loc[i].sort_values(by = 'XXX')
**TypeError**: sort_values() got an unexpected keyword argument 'by' ".
>>> type(df.loc[i])
>>> pandas.core.frame.DataFrame
Run Code Online (Sandbox Code Playgroud)
但是它在for循环之外起作用!
df.loc['string'].sort_values(by = 'XXX')
>>> type(df.loc['string'])
>>> pandas.core.frame.DataFrame
Run Code Online (Sandbox Code Playgroud)
我糊涂了。
这是因为在您的情况下,loc运算符的结果是一个pandas.Series对象。在sort_values这种情况下没有一个关键字参数by,因为它只能排序的序列值。有一个在签名中的差异,当你调用sort values一个pandas.DataFrame
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.sort_values.html
当你打电话sort_values给pandas.Series
http://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.Series.sort_values.html
| 归档时间: |
|
| 查看次数: |
8733 次 |
| 最近记录: |