python – Pandas中的排序函数,返回凌乱的数据

我正在尝试使用以下代码在Pandas中使用sort函数对CSV文件中的数据进行排序.我原始文件中有229行.但排序的输出是245行,因为字段中的某些数据是在下一行中打印的,而某些行没有任何值.

sample=pd.read_csv("sample.csv" , encoding='latin-1', skipinitialspace=True)
sample_sorted = sample.sort_values(by = ['rating'])
sample_sorted.to_csv("sample_sorted.csv")

我认为,出现这个问题是因为在某些单元格中,数据是通过生成新行来输入的.例如,这是原始文件中单元格的内容.当我对原始文件进行排序时,第二行打印在一个新行中,并且在第一行和第二行之间留空3行.

"Side effects are way to extreme. 



E-mail me if you have experianced the same things."

有什么建议吗?谢谢 !

最佳答案 您可以尝试删除问题列中的换行符.

sample=pd.read_csv("sample.csv" , encoding='latin-1', skipinitialspace=True)
sample["problem_column"] = (sample["problem_column"].
                            apply(lambda x: " ".join([word for word in x.split()])
                            )

并看看这是否有帮助.如果没有可重复的样本,很难理解为什么会发生这种情况.

点赞