怎么用python把一个*。csv 文件里面的数据整合成一个表格
*。csv文件里内容是:name,age,id,yearxiaohong,10,123,1999xiaoming,11,124,1998xiaoshi,12,125,19...
*。csv 文件里内容是:
name,age,id,year
xiaohong,10,123,1999
xiaoming,11,124,1998
xiaoshi,12,125,1997
写一个方程 把里面的数据整合成表格形式:
def table:
.....
结果写成{'name':['xiaohong','xiaoming','xiaoshi'],'age':['10','11','12'],'id':['123','124','125'],'year':['1999','1998','1997']} 展开
name,age,id,year
xiaohong,10,123,1999
xiaoming,11,124,1998
xiaoshi,12,125,1997
写一个方程 把里面的数据整合成表格形式:
def table:
.....
结果写成{'name':['xiaohong','xiaoming','xiaoshi'],'age':['10','11','12'],'id':['123','124','125'],'year':['1999','1998','1997']} 展开
展开全部
假设你这里是一个大文件。用CSV缺省配置不能读大文件。我们自己写一个。
def readfile(fn):
fp=open(fp,'rb')
while True:
line=fp.readline()
if not line:break
line=line.strip()
yield line.split(',')
fp.close()
import os,sys,time,glob
files = glob.glob("*.csv")
data = {}
for fn in files:
record_number=0
for cols in readline(fn):
if record_number==0:
for name in cols: data[name]=[]
else:
for c in cols:
data[name].append(c)
record_number+=1
#end
这样就把所有的文件都读到一个data变量里了,而且是按列存放的。
展开全部
整合成表格形式? 给个具体的描述吧
追问
结果写成{'name':['xiaohong','xiaoming','xiaoshi'],'age':['10','11','12'],'id':['123','124','125'],'year':['1999','1998','1997']}
追答
import csv
datafile = 'test.csv'
datas = {}
csv_file = csv.DictReader(
open(datafile, 'rb'),
delimiter=',',
quotechar='"')
for d in csv_file:
for k, v in d.items():
datas.setdefault(k, []).append(v)
print datas
# result:
# {'id': ['123', '124', '125'], 'age': ['10', '11', '12'], 'name': ['xiaohong', 'xiaoming', 'xiaoshi'], 'year': # ['1999', '1998', '1997']}
直接使用python中的csv模块提供的功能即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询