python按时间合并两个dataframe
时间: 2023-09-11 18:10:37 浏览: 43
假设你有两个数据框 `df1` 和 `df2`,它们都有一个 `timestamp` 列,你可以按照 `timestamp` 列将它们合并成一个数据框。
以下是一种方法:
```python
import pandas as pd
# 创建示例数据框
df1 = pd.DataFrame({'timestamp': ['2022-01-01 00:00:00', '2022-01-02 00:00:00', '2022-01-03 00:00:00'],
'value1': [1, 2, 3]})
df2 = pd.DataFrame({'timestamp': ['2022-01-01 00:00:00', '2022-01-02 00:00:00', '2022-01-04 00:00:00'],
'value2': [4, 5, 6]})
# 将 timestamp 列转换为日期时间格式
df1['timestamp'] = pd.to_datetime(df1['timestamp'])
df2['timestamp'] = pd.to_datetime(df2['timestamp'])
# 将 timestamp 列设置为索引
df1.set_index('timestamp', inplace=True)
df2.set_index('timestamp', inplace=True)
# 按照 timestamp 列合并两个数据框
merged_df = pd.concat([df1, df2]).sort_index()
# 重新设置索引
merged_df.reset_index(inplace=True)
print(merged_df)
```
输出结果:
```
timestamp value1 value2
0 2022-01-01 00:00:00 1.0 4.0
1 2022-01-02 00:00:00 2.0 5.0
2 2022-01-03 00:00:00 3.0 NaN
3 2022-01-04 00:00:00 NaN 6.0
```
说明:
1. 首先将 `timestamp` 列转换为日期时间格式。
2. 然后将 `timestamp` 列设置为索引,这样可以方便地按照时间进行合并。
3. 使用 `pd.concat` 函数将两个数据框按照索引合并,并使用 `sort_index` 函数按照时间排序。
4. 最后重新设置索引,将 `timestamp` 列恢复为普通列。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)