gpt4 book ai didi

python - 如何选择在python中写入(.csv)的列

转载 作者:太空宇宙 更新时间:2023-11-04 00:55:00 25 4
gpt4 key购买 nike

import csv

f = csv.reader(open('lmt.csv','r')) # open input file for reading
Date, Open, Hihh, mLow, Close, Volume = zip(*f) #s plit it into separate columns

ofile = open("MYFILEnew1.csv", "wb") # output csv file
c = csv.writer(ofile)

item = Date
item2 = Volume
rows = zip(item, item)
i = 0
for row in item2:
print row
writer = csv.writer(ofile, delimiter='\t')
writer.writerow([row])

ofile.close()

以上是我到目前为止制作的内容。

如您在第 3 行中所见,我从电子表格中提取了 6 列。我想创建一个名为 MYFILEnew1.csv 的 .csv 文件,它只有两列,DateVolume

我上面创建的 .csv 仅将 Volume 列写入新 .csv 文件的第一列。您如何将 Date 放入第二列?

例如

Date       Open   High      Low     Close    Volume
17-Feb-16 210 212.97 209.1 212.74 1237731

是我所拥有的。我想生成一个新的 csv 文件,这样它就有

Date           Volume
17-Feb-16 1237731

最佳答案

如果我理解你的问题是正确的,你可以很容易地使用 panda 的 read_csv 来实现。和 to_csv (@downvoter:你能解释一下你的反对票吗!?);您的问题的最终解决方案可以在下面找到EDIT2:

import pandas as pd

# this assumes that your file is comma separated
# if it is e.g. tab separated you should use pd.read_csv('data.csv', sep = '\t')
df = pd.read_csv('data.csv')

# select desired columns
df = df[['Date', 'Volume']]

#write to the file (tab separated)
df.to_csv('MYFILEnew1.csv', sep='\t', index=False)

因此,如果您的 data.csv 文件如下所示:

Date,Open,Hihh,mLow,Close,Volume
1,5,9,13,17,21
2,6,10,14,18,22
3,7,11,15,19,23
4,8,12,16,20,24

MYFILEnew1.csv 在运行上面的脚本后看起来像这样:

Date    Volume
1 21
2 22
3 23
4 24

编辑

使用您的数据(制表符分隔,存储在文件 data3.csv 中):

Date    Open    Hihh    mLow    Close   Volume
17-Feb-16 210 212.97 209.1 212.74 1237731

然后

import pandas as pd

df = pd.read_csv('data3.csv', sep='\t')

# select desired columns
df = df[['Date', 'Volume']]

# write to the file (tab separated)
df.to_csv('MYFILEnew1.csv', sep='\t', index=False)

给出想要的输出

Date    Volume
17-Feb-16 1237731

EDIT2

由于输入的 csv 文件中的标题似乎乱七八糟(如评论中所述),因此您必须重命名第一列。使用您的整个数据集,以下现在对我来说工作正常:

import pandas as pd

df = pd.read_csv('lmt.csv', sep=',')

# get rid of the wrongly formatted column name
df.rename(columns={df.columns[0]: 'Date' }, inplace=True)

# select desired columns
df = df[['Date', 'Volume']]

# write to the file (tab separated)
df.to_csv('MYFILEnew1.csv', sep='\t', index=False)

关于python - 如何选择在python中写入(.csv)的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35527861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com