熊猫:如何从CSV或Excel文件中读取行?

时间:2018-04-19 20:46:25

标签: python excel pandas

看起来您可以查看文件中的列没有问题,但是没有明显的方法来查看行。我知道我可以将整个文件(CSV或excel)读入一个疯狂的巨大数据框中以便选择行,但我宁愿能够直接从文件中获取特定行并将它们存储在合理大小的数据帧中。

我确实知道我可以在将df保存到上述CVS / Excel文件之前转置/转动df。这对Excel来说是一个问题,因为我的列(转置的行)用完得太快了。我宁愿使用Excel而不是CSV。

我原来的,不是转置数据文件有9000+行和20ish cols。我使用的Excel 2003最多支持256列。

编辑:找出适合我的解决方案。它比我想象的要简单得多。我最终使用的是CSV而不是Excel(我的项目没有发现任何严重的差异)这里适用于任何可能遇到同样问题的人:

import pandas as pd
selectionList = (2, 43, 792, 4760) #rows to select
df = pd.read_csv(your_csv_file, index_col=0).T
selection = {}

for item in selectionList:
    selection[item] = df[item]

selection = pd.DataFrame.from_dict(selection)
selection.T.to_csv(your_path)

1 个答案:

答案 0 :(得分:4)

我认为您可以使用pandas.read_csv中的skiprows和nrows参数来挑选要读入的各行。

使用skiprows,您可以为其提供一个不导入的行的长列表(0索引),例如[0,5,6,10]。这可能最终成为一个巨大的名单。如果您提供一个整数,它将跳过该行数并开始读取。将nrows设置为可以获取所需行数的任何内容。

如果我误解了这个问题,请告诉我。