将 pandas 数据帧导出到 csv 会导致随机换行

Exporting pandas dataframe to csv causes random line breaks

我正在尝试从维基百科中抓取一些名人的数据。我在获取数据时没有遇到任何问题,但是当我尝试将其导出到 csv 时,总会有一些条目导致出现重大问题。基本上,大多数条目的输出 csv 格式都很好,除了少数导致我似乎无法克服的随机换行符。这是示例数据和代码:

# 1. pull out wiki pages
sample_names_list = [{'name': 'Mikhail Fridman', 'index': 11.0}, #will work fine
                     {'name': 'Roman Abramovich', 'index': 12.0}, #will cause issue
                     {'name': 'Marit Rausing', 'index': 13.0}] #has no wiki page, hence 'try' in loops below

# 1.1 get page title for each name in list
import wikipedia as wk

for person in sample_names_list:
    try:
        wiki_page = person['name']
        person['wiki_page'] = wk.page(title = wiki_page, auto_suggest = True)
    except: pass

# 1.2 get page content for each page title in list
for person in sample_names_list:
    try:
        person_page = person['wiki_page']
        person['wiki_text'] = person_page.content
    except: pass

# 2. convert to dataframe
import pandas as pd
sample_names_data = pd.DataFrame(sample_names_list)
sample_names_data.drop('wiki_page', axis = 1, inplace= True) #drop unnecessary col

# 3. export csv
sample_names_data.to_csv('sample_names_data.csv')

这是输出的屏幕截图,如您所见,其中一个条目中插入了随机换行符,并且分散在各处,没有明显的模式:

我试过摆弄 sample_names_list 中的数据类型,我试过摆弄 to_csv 的参数,我试过其他导出 csv 的方法。 None 这些方法奏效了。我是 python 的新手,所以它很可能是一个非常明显的解决方案。非常感谢任何帮助!

维基百科内容中有换行符,很难以 CSV 等面向行的格式可靠地表示。

您可以使用 Excel 的打开对话框(不仅仅是双击文件)和 select“文本文件”作为格式,它允许您选择如何解释各种分隔符和带引号的字符串...但最好 完全不要使用 CSV 进行数据交换。

  • 如果您需要使用 Excel,请在 Pandas 中使用 .to_excel()
  • 如果您只需要使用 Pandas,请使用例如.to_pickle().
  • 如果您需要与其他软件的互操作性,.to_json() 将是一个不错的选择。