我想使用pd.concat
,因为datetime64[ns]已被弃用。问题是我不知道如何使用。
代码如下:
ads_hour['Date'] = pd.to_datetime(ads_hour['Date'], errors='coerce')
ads['Time'] = pd.to_datetime(ads['Time'], errors='coerce')
merge_columns_ads_hour = "Date"
merge_columns_ads = "Time"
merged_ads_hour_ads = pd.merge(ads_hour, ads, left_on=merge_columns_ads_hour, right_on=merge_columns_ads)
merge_columns_advertising = "TV"
allData = pd.merge(merged_ads_hour_ads, advertising, left_on=merge_columns_ads, right_on=merge_columns_advertising)
# Display the first few rows of the merged DataFrame
print(allData.head())
字符串
1条答案
按热度按时间n53p2ov01#
如果要使用
pd.concat
而不是pd.merge
来合并基于日期时间列的 Dataframe ,则可以沿适当的轴沿着连接 Dataframe 。以下是更改代码的方法:字符串
在这段代码中,
set_index
用于在连接之前将datetime列设置为索引,reset_index
用于在连接之后将索引转换回列。join='inner'
参数确保最终结果中仅包含具有匹配datetime值的行。