如何创建具有特定值的新熊猫df

时间:2019-03-16 17:29:02

标签: python pandas dataframe

我有一个数据框,地址,如下所示:

    P_o_box    House_num
0        22        100
1        22        100
2        22        101
3        23        102
4        26        104

我想创建一个新的pd.dataframe,specific_address,它仅返回“ P_o_Box”和“ House_num”的特定值。我的代码改为返回布尔值的数据框。如何仅将地址数据框的值包含到新数据框specific_address中?

specific_address = pd.DataFrame({'P_o_box': address['P_o_box'] == 22,
'House_num': address['House_num'] == 100})

1 个答案:

答案 0 :(得分:1)

使用以下内容:

specific_address=df[df.P_o_box.eq(22)&df.House_num.eq(100)]
print(specific_address)

   P_o_box  House_num
0       22        100
1       22        100

编辑,以获取新的df:

new_df=pd.DataFrame({'P_o_box': df.loc[df['P_o_box'] == 22,'P_o_box'],
'House_num': df.loc[df['House_num'] == 100,'House_num']})
print(new_df)

   P_o_box  House_num
0       22      100.0
1       22      100.0
2       22        NaN

您可以使用:new_df=new_df.dropna()删除NaN

如果是这样,您可以将df名称替换为address