- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我猜这是一个简单的修复方法,但我遇到了一个问题,即使用 to_csv() 函数将 pandas 数据帧保存到 csv 文件需要将近一个小时。我将 anaconda python 2.7.12 与 pandas (0.19.1) 一起使用。
import os
import glob
import pandas as pd
src_files = glob.glob(os.path.join('/my/path', "*.csv.gz"))
# 1 - Takes 2 min to read 20m records from 30 files
for file_ in sorted(src_files):
stage = pd.DataFrame()
iter_csv = pd.read_csv(file_
, sep=','
, index_col=False
, header=0
, low_memory=False
, iterator=True
, chunksize=100000
, compression='gzip'
, memory_map=True
, encoding='utf-8')
df = pd.concat([chunk for chunk in iter_csv])
stage = stage.append(df, ignore_index=True)
# 2 - Takes 55 min to write 20m records from one dataframe
stage.to_csv('output.csv'
, sep='|'
, header=True
, index=False
, chunksize=100000
, encoding='utf-8')
del stage
我已经确认硬件和内存都在工作,但这些是相当宽的表格(约 100 列),大部分是数字(十进制)数据。
谢谢,
最佳答案
添加我的小见识,因为“gzip”替代方案对我不起作用 - 尝试使用 to_hdf 方法。这大大减少了写入时间! (对于 100MB 的文件不到一秒 - CSV 选项在 30-55 秒之间执行此操作)
stage.to_hdf(r'path/file.h5', key='stage', mode='w')
关于python - Pandas to_csv() 保存大数据帧速度慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40660331/
我需要一个由 , 分割数据的单行 CSV。我的问题是,当我尝试使用 apply 遍历我的 Dataframe 时,我得到一个 Series 对象并且 to_csv 方法给我一个 str 分成行,将 N
尝试使用 pandas 将数据帧写入 csv 并删除连接值产生的引号。解释器不接受参数引用。 错误 TypeError: to_csv() got an unexpected keyword argu
我正在使用 to_csv() 方法将数据框写入 .csv 文件。我有一个名为 emotion 的变量,它引用一个数据框,我正在使用 to_csv() 像这样; emotion.to_csv(file
我有这个代码 import numpy as np import pandas as pd import csv odata = pd.read_csv('email.csv') data = oda
我有一个具有以下结构的数据框,为了解决这个问题,我对其进行了简化,我正在从 csv 文件中读取数据框。 A B C D E LOCATION DATE DAT
我用 pd.read_csv 读取 CSV 文件, 如图所示: lisp = pd.read_csv('ida_lisp.ida', header=None, skip_blank_lines=Fal
我试图从 tripadvisor 抓取数据,但是从我尝试抓取的几个页面中,当我尝试将其导出到 csv 时,它只显示 1 行数据并给出这样的错误消息 AttributeError: 'NoneType'
我有数据框 df = [["A1" "B2" "C3"] ["D4" "E5" "F6"]] (所有文本均为字符串)我想使用 df.to_csv() 将其保存到一个文件中,文本“E5”为彩色/粗体。可
出于某种原因,我需要以这种格式输出到 csv 并在每列名称周围加上引号,我想要的输出如下所示: "date" "ret" 2018-09-24 0.00013123989025119056 我正在尝试
如何将文件写入文件名未编码的文件系统? 目前,写入 /myfolder/my file.csv 变为 /myfolder/my%20file.csv。我希望文件名是my file.csv。 代码片段:
来自具有以下格式的 csv 文件: Date,Data 01-01-01,111 02-02-02,222 03-03-03,333 我使用以下代码计算值的月平均值: data = pd.read_c
我有一个数据集,我试图将其拆分为训练集和测试集。我制作了以下脚本来分割数据,如上所述: import pandas as pd import numpy as np data_path = "/pat
我想使用 DecisionTree 2.2.2 构建决策树。 https://engineering.purdue.edu/kak/distDT/DecisionTree-2.2.2.html 但是,
我正在将 pandas 数据帧写入 csv 文件。但是我可以发现唯一 ID 的数量正在减少,但总行数保持不变 下面您可以找到代码: 检查grouped_test的总计数和唯一计数 grouped_t
我是 python 的新手,到目前为止我很喜欢 ipython notebook 来学习。我是在使用 to_csv() 函数将 Pandas 数据帧写出到文件中吗?我想打开 csv 以查看它在 exc
似乎 pandas.to_csv 函数有两个属性做同样的事情。 也许我遗漏了什么。 来自文档: columns : sequence, optional Columns to write header
我正在使用 jupyter notebook pandas to_csv 不会将数据帧输出到文件。 我尝试使用 to_csv 通过设置工作目录或指定目录将数据帧输出到 csv 文件,但它没有创建任何文
我想使用 Pandas DataFrame 将我的数据写入 csv 文件,我的代码是: >>> for _, dataframe in my_data.items(): datafra
为了降低内存成本,我使用 astype() 指定了我的 pandas 数据框的数据类型,例如: df['A'] = df['A'].astype(int8) 然后我使用 to_csv() 来存储它,但
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我是一名优秀的程序员,十分优秀!