gpt4 book ai didi

python - 如何使用python将三个csv文件数据写入一个具有一个日期列和三个数据列的csv文件

转载 作者:行者123 更新时间:2023-12-01 07:08:56 25 4
gpt4 key购买 nike

我有三个 csv 文件,其中一个输入值为日期。我只想将这三个 csv 文件合并为一个包含一个日期列和三个输入数据的 csv 文件。

date                      X1
2018-06-08 09:30:00 450
2018-06-08 10:30:00 340.0
2018-06-08 11:30:00 200.5
2018-06-08 12:30:00 100.75
2018-06-08 13:30:00 80.875
2018-06-08 14:30:00 50.4375
2018-06-08 15:30:00 450.71875
2018-06-08 16:30:00 300.859375
2018-06-08 17:30:00 150.4296875
2018-06-08 18:30:00 40.21484375
2018-06-08 19:30:00 47.607421875
2018-06-08 20:30:00 23.8037109375


second csv

date X2
2018-06-08 09:25:00 300
2018-06-08 10:25:00 250.0
2018-06-08 11:25:00 170.0
2018-06-08 12:25:00 80.5
2018-06-08 13:25:00 65.25
2018-06-08 14:25:00 55.625
2018-06-08 15:25:00 40.8125
2018-06-08 16:25:00 20.90625
2018-06-08 17:25:00 10.953125
2018-06-08 18:25:00 8.9765625


third csv

date X3
2018-06-08 15:00:00 3
2018-06-08 16:00:00 2.5.0
2018-06-08 17:00:00 0.5
2018-06-08 18:00:00 0.35
2018-06-08 19:00:00 0.25
2018-06-08 20:00:00 0.15
2018-06-08 21:00:00 0.03125
2018-06-08 22:00:00 0.015625
2018-06-08 23:00:00 0.0078125
2018-06-09 00:00:00 0.00390625

这是我的三个 csv 文件:

我期望的是:

date                     X1             X2        X3

2018-06-08 09:25:00 450 NaN NaN
2018-06-08 09:30:00 NaN 300 NaN
2018-06-08 10:25:00 NaN 250 NaN
2018-06-08 10:30:00 340 NaN NaN
2018-06-08 11:25:00 NaN 170 NaN
2018-06-08 11:30:00 200.5 NaN NaN
2018-06-08 12:25:00 80.5 NaN NaN
2018-06-08 12:30:00 100.75 NaN NaN
2018-06-08 13:25:00 NaN 65.5 NaN
2018-06-08 13:30:00 80.875 NaN NaN
2018-06-08 14:25:00 NaN 55.625 NaN
2018-06-08 14:30:00 50.4375 NaN NaN
2018-06-08 15:00:00 NaN NaN 3

这里我编写了一段代码,但它没有给出我期望的输出。我的代码:

df1= pd.read_csv('X1.csv')
df2=pd.read_csv('X2'.csv')
df3=pd.read_csv('X3'.csv')
df = pd.concat([df1,df2,df3])

谁能帮我解决这个问题吗?

编写 jerzrael 提供的代码后的最终输出

                     Unnamed: 0       X1      Unnamed: 0      X2           Unnamed: 0  \
date
2018-06-08 09:25:00 NaN NaN 0.0 500.000000 NaN
2018-06-08 10:25:00 NaN NaN 1.0 350.000000 NaN
2018-06-08 11:25:00 NaN NaN 2.0 250.000000 NaN
2018-06-08 12:25:00 NaN NaN 3.0 100.500000 NaN
2018-06-08 13:25:00 NaN NaN 4.0 50.250000 NaN
2018-06-08 14:25:00 NaN NaN 5.0 30.625000 NaN
2018-06-08 15:00:00 0.0 2.000000 NaN NaN 0.0
2018-06-08 15:25:00 NaN NaN 6.0 7.812500 NaN
2018-06-08 16:00:00 1.0 1.5000000 NaN NaN 1.0
2018-06-08 16:25:00 NaN NaN 7.0 3.906250 NaN
2018-06-08 17:00:00 2.0 0.500000 NaN NaN 2.0

最佳答案

创建DatetimeIndex,然后将concataxis=1结合使用:

df1=pd.read_csv('X1.csv', parse_dates=['date'], index_col=['date'])
df2=pd.read_csv('X2.csv', parse_dates=['date'], index_col=['date'])
df3=pd.read_csv('X3.csv', parse_dates=['date'], index_col=['date'])

df = pd.concat([df1,df2,df3], axis=1)

关于python - 如何使用python将三个csv文件数据写入一个具有一个日期列和三个数据列的csv文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58320865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com