Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python I';我试图使用if语句基于不同的数据帧创建一个新的数据帧_Python_Pandas_Dataframe - Fatal编程技术网

Python I';我试图使用if语句基于不同的数据帧创建一个新的数据帧

Python I';我试图使用if语句基于不同的数据帧创建一个新的数据帧,python,pandas,dataframe,Python,Pandas,Dataframe,我想知道如何在数据帧的行上应用if语句。所有列都由以下字符串组成: d = {'emp' : {'Breakdown' : '11/12/2019', 'expl' : '123'}, 'emp2': {'Breakdown' : '11/03/2020', 'expl' : '123'}, 'emp3' : {'Breakdown' : '31/12/2019', 'expl' : '123'}, 'emp4' : {'Breakdown' : '31/12/2020', 'expl' :

我想知道如何在数据帧的行上应用if语句。所有列都由以下字符串组成:


d = {'emp' : {'Breakdown' : '11/12/2019', 'expl' : '123'}, 'emp2': {'Breakdown' : '11/03/2020', 'expl' : '123'}, 'emp3' : {'Breakdown' : '31/12/2019', 'expl' : '123'}, 'emp4' : {'Breakdown' : '31/12/2020', 'expl' : '123'}}

d1 = pd.DataFrame(d)

所以我把它做成了一个数据帧d,我想尝试从包含“2020”的字符串中创建一个新的数据帧。 我试过这个:

df = {}

for t in d:
   df = d1[t]
   if '2020' in df.get('Breakdown'):
       ...
我还尝试了
df.loc[:'Breakdown']
。这给了我两个值
11/03/2020
31/12/2020
。所以从这里我真的不知道该怎么办。我希望它看起来像这样:

new_d = {'emp2' : {'Breakdown' : '11/03/2020', 'expl' : '123'}, 'emp4' : {'Breakdown' : '31/12/2020', 'expl' : '123'}}
new_df = pd.DataFrame(new_d)
也许这比我的编程水平高了一点,但我喜欢用数据帧做实验。我还在玩弄代码,所以如果我想出一个解决方案,我显然会在这里编辑它

提前感谢。

使用,创建布尔掩码,然后使用此掩码过滤相应的列:

df = d1.loc[:, d1.loc['Breakdown'].str.contains('2020')]
结果:

# print(df)
                 emp2        emp4
Breakdown  11/03/2020  31/12/2020
expl              123         123
使用,创建布尔掩码,然后使用此掩码过滤相应的列:

df = d1.loc[:, d1.loc['Breakdown'].str.contains('2020')]
结果:

# print(df)
                 emp2        emp4
Breakdown  11/03/2020  31/12/2020
expl              123         123

非常感谢Shubham Sharma。事实上,这对我很有用。非常感谢Shubham Sharma。事实上,它确实对我有用。