Python根据列数据预测列标题
我有很多CSV文件,包括不同的列名,但数据相似,例如:Python根据列数据预测列标题,python,pandas,dataframe,Python,Pandas,Dataframe,我有很多CSV文件,包括不同的列名,但数据相似,例如: 其中,account和lookup是相同的字段,name和accountname是相同的字段,依此类推。是否有一种方法可以将所有这些规范化或分类为一个通用的列名?我无法将其映射到散列,因为列名从来都不相似,每次有新文件时,列名都不同,并且它们在表中的显示顺序也不同 您可以尝试以下方法: 使用dictreader解析csv数据 行列表=[] 打开(文件路径)为f时: cf=csv.DictReader(f,分隔符=,字段名=[]) 对于
其中,
account
和lookup
是相同的字段,name
和accountname
是相同的字段,依此类推。是否有一种方法可以将所有这些规范化或分类为一个通用的列名?我无法将其映射到散列,因为列名从来都不相似,每次有新文件时,列名都不同,并且它们在表中的显示顺序也不同 您可以尝试以下方法:
行列表=[]
打开(文件路径)为f时:
cf=csv.DictReader(f,分隔符=,字段名=[])
对于cf中的行:
tmp_行=collections.OrderedDict()
对于cf.fieldnames中的列:
tmp_行[列]=行[列]
行列表。追加(tmp行)
返回行列表
然后使用dictwriter将该对象
行列表
转储到csv文件中。对于每个文件,列索引是否相同?能否显示预期结果您针对列名提供的数据,它们的格式是否相同,我的意思是,如果匹配,您可能会得到解决方案,示例数据是否准确?@anky\u 91是,格式相同。我只需要一种方法将列名更改为公共名称。如果列名至少有一些特定的单词name、address共同,您可以尝试使用regex将其分离为单独的@kaundanya5
account name address
1 2 3
4 5 6
lookup accountname accountaddress
7 8 9
10 11 12