这可能是基本的,但我时差 react 的大脑拒绝找到解决方案。
我有以下列表(或列表列表):
#"variables" names
name=['a', 'b', 'c']
#variables values
value=[[0,1,1],[0,0,0],[1,1,1]]
#id number of each observation
id=[100,134,26]
我想将输出写入 CSV 文件,使其看起来像这样:
a, b, c, id
0, 1, 1, 100
0, 0, 0, 134
1, 1, 1, 26
我可以将任何单个列表(或列表列表)写入 CSV 文件,没有问题。但是如何转置 id 列表并将其附加到变量值中?将名字堆叠在顶部将是一个巨大的奖励。我总是可以创建两个 CSV 文件,但我不愿意这样做,因为数据操作中出错的可能性呈指数级增加。 这是我编写的 CSV 代码(非常标准):
with open('test.csv', 'w', newline='') as f:
wtr = csv.writer(f, delimiter= ',')
wtr.writerows(full_data)
#full_data would be the cleaned data to write into CSV file
谢谢!
最佳答案
一种无需 pandas 即可完成此操作的方法。
import csv
fulldata = [name + ['id']] + [val + [id[i]] for i, val in enumerate(value)]
with open('mycsv.csv','w') as f:
mywriter = csv.writer(f)
mywriter.writerows(fulldata)
会给你:
a,b,c,id
0,1,1,100
0,0,0,134
1,1,1,26
关于Python 转 CSV : transposing and appending values to list of lists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40242186/