首页 文章

使用另一个数据框中的索引创建一个空数据框

提问于
浏览
32

我有一个包含多个列和行的数据框 df1 . 简单的例子:

TIME T1  T2 
       1 10 100
       2 20 200
       3 30 300

我想创建一个空数据框 df2 以及稍后,添加带有计算结果的新列 .

在这一刻,我的代码看起来像这样:

df1=pd.read_csv("1.txt",index_col="TIME")

     df2=df1.copy()[[]] #copy df1 and erase all columns

...添加两个新列:

df2["results1"],df2["results2"]=df1["T1"]*df["T2"]*3,df1["T2"]+100

有没有更好/更安全/更快的方法来做到这一点?是否可以创建一个空数据框df2并仅从df1复制索引?

3 回答

  • 3
    df2 = pd.DataFrame(index=df1.index)
    

    这将创建一个没有列但只有索引的DataFrame,它将与df1中的索引相同 .

  • 52

    最好将索引设置为df1.index.copy()

    df2 = pd.DataFrame(index=df1.index.copy())
    

    您可以使用 df1.index df2.index 来检查它们是否是同一个对象

  • 0

    您还可以直接将数据帧的索引分配给另一个数据帧 .

    df2.index=df1.index

相关问题