【问题标题】:Append the values of a particular column from a given dataframe to another dataframe将给定数据帧中特定列的值附加到另一个数据帧
【发布时间】:2021-05-17 08:29:30
【问题描述】:

我有两个类似于下面示例的数据框。第一个 df1 有一列,第二个有列。这是时间序列数据。

#First dataFrame
data=('2013-01-01','2013-02-01','2013-03-01')
temperature=(-9,-14,5)

df1 = pd.DataFrame({"Data":data,"Temperature":temperature})
df1.set_index('Data',inplace=True)

#Second Dataframe
data2=('2013-04-01','2013-05-01','2013-06-01')
temperature2=(9,15,20)
temperature3=(7,19,22)

df2 = pd.DataFrame({"Data":data,"Temperature":temperature2,"Temperature2":temperature3})
df2.set_index('Data',inplace=True)

两个数据框都有日期类型索引。我想在 df1 的值之后加入 df2 的一列中的值,但我不知道该怎么做。在实践中这真的很简单,但我需要在熊猫中做到这一点。在网上找不到任何解决方案。新的数据框应该是这样的

df_new
2013-01-01   -9
2013-02-01   -14
2013-03-01    5
2013-04-01    9
2013-05-01    15
2013-06-01    20

【问题讨论】:

    标签: pandas dataframe join merge concatenation


    【解决方案1】:

    你可以使用pd.concat函数:

    df_new = pd.concat([df1, df2])
    

    【讨论】:

    • Thx bb1 但这不是我想要实现的。我的第二个数据框由两列组成。我忘了提这件事。使用 ``` pd.concat ``` 只需将这些列添加到我的新 df 中。我想要做的是将我的值放在第一个 df 中的现有值之下。
    • 您想编辑您的问题吗?在您给出的示例中,df1df2 都由索引和单个列组成。 new_dfDataFrame 应该由df1 行和df2 行组成,这就是pd.concat([df1, df2]) 所做的。
    • 是的.. 我会做的。我忘了添加额外的列
    【解决方案2】:

    好的!我找到了解决我的问题的方法。我的 DataFrames 是从 xlsx 文件中导入的,并且列的标题应该具有相同的名称。然后pd.concat 工作正常!谢谢!

    问题解决了!

    【讨论】:

      猜你喜欢
      • 2021-04-22
      • 2020-03-13
      • 2021-07-02
      • 2020-08-20
      • 2019-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-18
      相关资源
      最近更新 更多