![](/img/trans.png)
[英]Python: Create new column and row base on different column in CSV file
[英]Python csv - match a specific row and column, and pipe to new file
我有一个大的csv文件,大约有1000列(行)的大约170列的数值数据(列)。 我想要做的是将特定案例的特定值从csv文件传输到文本文件中。
更具体地说,我的csv文件以一列ID号(个案)开头,大约170列包含每种情况的各种数值数据点。 我想遍历csv文件并为“CASE156”(作为示例)拉出第17列(作为示例),并将数据保存在该位置:
CASE156_column_17.txt
要最初读入数据,我使用Python csv内置为:
f =csv.reader(open('genotypes.csv','rbU'))
我努力了
rownum=0
for row in f:
if rownum=='CASE156':
print column[16]
但是,这不会产生预期的结果。 如何为特定案例提取特定列的数据?
为了使事情稍微复杂一点,如果该单元格中没有数据,我想跳过它而不生成.txt文件。
提前谢谢了,
假设您要查找的密钥位于“key_index”列中,那么您可以使用:
f = csv.reader(open('genotypes.csv','rbU'))
key_index = 22 # assuming that this column contains something like 'CASE156'
for rownum, row in enumerate(f):
if row[key_index] == 'CASE156':
print row[16]
阅读基本的Python文档赞赏。
您还可以使用DictReader
通过dict使CSV数据更加平易近人,而不是只能通过列号访问的行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.