我有一个csv test1.csv(我没有标题!!!)。正如你所看到的那样,我还有一个分隔符,它带有管道,但在八列之后正好有一个制表符。你知道吗
ug|s|b|city|bg|1|94|ON-05-0216 9.72|28|288
ug|s|b|city|bg|1|94|ON-05-0217 9.72|28|288
我有第二个文件test2.csv,只有分隔符管道
ON-05-0216|100|50
ON-05-0180|244|152
ON-05-0219|269|146
因此,因为只有一个值(ON-05-0216
)与第一个文件的八列和第二个文件的第一列匹配,这意味着我在输出文件中应该只有一个值,但是与第二个文件的第二列和第三列的SUM列相加(100+50)。你知道吗
最终结果如下:
ug|s|b|city|bg|1|94|ON-05-0216 Total=150|9.72|28|288
或者
ug|s|b|city|bg|1|94|ON-05-0216|Total=150 9.72|28|288
什么都容易。你知道吗
我认为最好的方法是和熊猫一起使用。但我坚持从第一个文件中获取多个分隔符,以及如何匹配没有列名的列,因此不确定如何继续。你知道吗
import pandas as pd
a = pd.read_csv("test1.csv", header=None)
b = pd.read_csv("test2.csv", header=None)
merged = a.merge(b,)
merged.to_csv("output.csv", index=False)
先谢谢你
用途:
在读取csv
pd.read_csv(... sep='|')
时,可以将管道用作delimeter,并且稍后仅在此处使用此example拆分制表符分隔的列。你知道吗合并两个数据帧时,必须有一个公共列用于合并。在对不同的数据帧进行必要的计算之后,可以将它们用作索引,以便更容易地追加。你知道吗
相关问题 更多 >
编程相关推荐