Как получить нулевые строки из datafarmes, которые находятся в списке в python?

#python #pandas #list #dataframe #for-loop

#python #pandas #Список #dataframe #для цикла

Вопрос:

У меня есть два фрейма данных в списке, теперь я хочу получить столбцы с нулевыми строками, которые указаны в другом списке. Я пытался получить, но получаю ошибку. Есть предложения о том, как это сделать?

 l1 = ['b','c']
df_list = [df1,df2]
df1 = 
   a   b   c_r c_c c_d  d  
0  0   q   1    0   0   3  
1  0 NaN   0    0   0   1  
2  0 Nan   0    1   0   4 
3  0   d   0    0   0   5  
4  0 Nan   0    0   1   6 
df2 = 
   a  c    d  b_q b_d c_d
0  0  r    3  1    0   0
1  0  Nan  1  0    0   0
2  0  c    4  0    0   0
3  0  Nan  5  0    1   0
4  0  d    6  0    0   0       
 

Мой код:

 test_df=[]
for df in df_list:
  for cn in l1:
       test_df.append(df[df[cn].isnull()]) 

  
 

Комментарии:

1. столбец b не существует в df2 и c не существует в df1

2. Я хочу получить только нулевые строки в df1 для b и нули для c в df2

3. затем проверьте, существует ли имя столбца или нет с помощью for cn in l1: if en in df.columns.values:

4. Ура, спасибо, я понял. добавлено условие if, если cn в df: test_df.append(df[df[cn].isnull()]) и это сработало