如何纵向拼接两个DataFrame?pd.concat出现NaN值求助
解决pandas纵向堆叠DataFrame出现NaN的问题
问题根源是两个DataFrame的列名不匹配:series1包含hour、minute、value三列,series2包含hour、minute、value.1三列。用pd.concat纵向拼接时,pandas会保留所有列名,每个DataFrame缺失的列会自动填充NaN。
解决步骤:
- 先将series2的
value.1列重命名为value,确保两个DataFrame的列名完全一致:
series2_renamed = series2.rename(columns={'value.1': 'value'})
- 再执行纵向拼接,建议加上
ignore_index=True重置合并后的索引,避免出现重复索引值:
a = pd.concat([series1, series2_renamed], ignore_index=True)
完成后合并结果会是两行数据上下堆叠,不会出现NaN值。
内容的提问来源于stack exchange,提问作者Robin_hood_963
相关产品推荐
相关产品推荐

