对索引熊猫系列进行排序时出错
Posted
技术标签:
【中文标题】对索引熊猫系列进行排序时出错【英文标题】:Error with sorting an indexed pandas Series 【发布时间】:2020-10-20 02:09:12 【问题描述】:我无法对来自数据框的熊猫系列进行排序。我已经复制和粘贴,如果需要,更改来自不同websites 和堆栈溢出帖子的代码,但它们都没有对系列进行排序。完全没有变化。
如下图,变量dataFile
是一个DataFrame,变量data
是一个Series。
这是我的代码的相关部分:
filename = "students.csv"
dataFile = pd.read_csv(filename, index_col = 0)
attribute = 'Weight'
data = dataFile.loc[:][attribute]
data.sort_values(axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False)
print(data)
我尝试对 Series 和 DataFrame 进行排序,但无济于事。下面分别是 DataFrame 和 Series 的一些图片:
如果能得到任何帮助,我将不胜感激。
【问题讨论】:
您指定inplace=False
并且也不将结果分配回任何内容,因此您放弃了整个操作。做data = data.sort_values(...)
这能回答你的问题吗? Pandas dropna() function not working
【参考方案1】:
data = data.sort_values(...)
应该可以工作。
【讨论】:
@Jooeey 非常感谢。我花了 3 个多小时在这个程序上工作(不仅仅是对它进行排序),它终于可以工作了。【参考方案2】:尝试参数(inplace = True)。它就地执行操作。如果选择 False,则不会更改内存中的数据。因此,当您打印最后一行的数据时,它会显示之前保存的数据,没有进行任何更改。
试试:
data.sort_values(axis=0, ascending=True, inplace=True)
【讨论】:
以上是关于对索引熊猫系列进行排序时出错的主要内容,如果未能解决你的问题,请参考以下文章