全部 –
我期待从一个非常大的csv的第一行和最后一行创建一个pandas DataFrame.本练习的目的是能够轻松地从这些csv文件中的第一个和最后一个条目中获取一些属性.我使用以下方法抓住csv的第一行没有问题:
pd.read_csv(filename, nrows=1)
我也可以通过各种方式抓取文本文件的最后一行,例如:
with open(filename) as f:
last_line = f.readlines()[-1]
但是,将这两个东西放到一个DataFrame中会让我感到厌恶.有关如何最好地实现这一目标的任何见解?
编辑注意:我正在尝试完成此任务,而不是首先将所有数据加载到单个DataFrame中,因为我正在处理相当大(> 15MM行)的csv文件.
谢谢!
解决方法:
只需使用头部和尾部和concat.您甚至可以调整行数.
import pandas as pd
df = pd.read_csv("flu.csv")
top = df.head(1)
bottom = df.tail(1)
concatenated = pd.concat([top,bottom])
print concatenated
结果:
Date Cases
0 9/1/2014 45
121 12/31/2014 97
调整头部和尾部从顶部开始5行,从底部调整10行…
Date Cases
0 9/1/2014 45
1 9/2/2014 104
2 9/3/2014 47
3 9/4/2014 108
4 9/5/2014 49
112 12/22/2014 30