全部 –

我期待从一个非常大的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

113 12/23/2014 81

114 12/24/2014 99

115 12/25/2014 85

116 12/26/2014 55

117 12/27/2014 91

118 12/28/2014 68

119 12/29/2014 109

120 12/30/2014 55

121 12/31/2014 97

如果您不想将整个CSV文件作为数据框加载,可以使用的一种可能方法是将它们单独处理为CSV.以下代码与您的方法类似.

import pandas as pd

import csv

top = pd.read_csv("flu.csv", nrows=1)

headers = top.columns.values

with open("flu.csv", "r") as f, open("flu2.csv","w") as g:

last_line = f.readlines()[-1].strip().split(",")

c = csv.writer(g)

c.writerow(headers)

c.writerow(last_line)

bottom = pd.read_csv("flu2.csv")

concatenated = pd.concat([top, bottom])

concatenated.reset_index(inplace=True, drop=True)

print concatenated

除索引外,结果相同.测试了一百万行,并在大约一秒钟内处理.

Date Cases

0 9/1/2014 45

1 7/25/4885 99

[Finished in 0.9s]

它如何扩展到1500万行,也许这就是你现在的球赛.

所以我决定对15,728,626行进行测试,结果看起来不错.

Date Cases

0 9/1/2014 45

1 7/25/4885 99

[Finished in 3.3s]

标签:python,dataframe,csv,pandas

来源: https://codeday.me/bug/20190716/1476799.html

python读取csv最后一行_Python pandas Dataframe来自csv的第一行和最后一行相关推荐

  1. python中convert函数用法_Python Pandas DataFrame.tz_convert用法及代码示例

    Pandas DataFrame是带有标签轴(行和列)的二维大小可变的,可能是异构的表格数据结构.算术运算在行和列标签上对齐.可以将其视为Series对象的dict-like容器.这是 Pandas ...

  2. python dataframe 取一行_python – Pandas dataframe获取每个组的第一行

    我有一个pandas DataFrame如下. df = pd.DataFrame({'id' : [1,1,1,2,2,3,3,3,3,4,4,5,6,6,6,7,7], 'value' : [&q ...

  3. python中change的用法_Python Pandas dataframe.pct_change()用法及代码示例

    Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统. Pandas是其中的一种,使导入和分析数据更加容易. Pandas dataframe.pct ...

  4. python数据去重的函数_python pandas dataframe 去重函数的具体使用

    今天笔者想对pandas中的行进行去重操作,找了好久,才找到相关的函数 先看一个小例子 from pandas import Series, DataFrame data = DataFrame({' ...

  5. python中mean的用法_Python Pandas dataframe.mean()用法及代码示例

    Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统. Pandas是其中的一种,使导入和分析数据更加容易. Pandas dataframe.mea ...

  6. python中info的用法_Python pandas.DataFrame.info函数方法的使用

    DataFrame.info(self, verbose=None, buf=None, max_cols=None, memory_usage=None, null_counts=None) [so ...

  7. python apply函数的用法_Python pandas.DataFrame.apply函数方法的使用

    DataFrame.apply(func, axis=0, broadcast=None, raw=False, reduce=None, result_type=None, args=(), **k ...

  8. python中mean的用法_Python pandas.DataFrame.mean函数方法的使用

    DataFrame.mean(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)[source] 返回所请求轴 ...

  9. python中change的用法_Python pandas.DataFrame.pct_change函数方法的使用

    DataFrame.pct_change(self: ~FrameOrSeries, periods=1, fill_method='pad', limit=None, freq=None, **kw ...

最新文章

  1. 当前最佳的YOLOv4是如何炼成的?细数那些小细节
  2. 【问题收录】[ubuntu]startx doesn't work
  3. golang打包HTML为Android,使用Go开发Web服务,并打包html/js/css等静态资源文件
  4. python的字符串类型本质上_4.3Python数据类型(3)之字符串类型
  5. 音视频技术开发周刊 | 161
  6. 小程序 获取当前用户地址及地图显示
  7. 实例29:python
  8. mysql 事务sql_mysql存储过程之事务篇
  9. 【工程项目经验】之C语言或汇编语言宏展开
  10. 5-5array统计tcp连接状态数量
  11. eclipse java类图_Eclipse下生成/编辑Java类图或时序图(UML)[转载]
  12. 《帝国时代III黄金版》宣布
  13. 游乐园项目(rem)
  14. 网站后台——用户上传图片剪切
  15. diskgenius合并分区(diskgenius合并分区到c盘)
  16. Wireshark抓包页面的登录信息
  17. vnpy框架的策略开发和回测逻辑详解---以螺纹钢主力合约的R-breaker日内策略为例
  18. 【荐】联通域名纠错 联通域名DNS劫持 您输入的域名有误或站点访问失败
  19. 易语言 判断网络是否连接
  20. 根据课表自动打开网课上课平台——Python实现

热门文章

  1. 排序的之神奇的希维尔排序
  2. 2016年央视315晚会互联网成重灾区!
  3. 百亿级实时消息推送的实战之道,与王者荣耀一班车就是这么稳!
  4. 阿尔巴尼的计算机科学,纽约州立大学阿尔巴尼分校计算机科学研究生语言及申请要求-费用-课程设置...
  5. HarmonyOS什么时候上微内核,华为鸿蒙OS什么时候发售 华为鸿蒙harmonyOS什么时候上市...
  6. 对抗样本之MIM原理coding
  7. 华为什么时候开放鸿蒙,华为鸿蒙系统什么时候开放?华为鸿蒙系统支持的手机型号...
  8. 杂谈:英雄联盟和魔兽
  9. Android 获取客户端外网IP和服务端IP
  10. 苹果手机上的小圆圈在哪设置_苹果手机用流量下载软件如何设置