考慮以下 Pandas DataFrame: | val1 | val2 | val3 | val4------------------------------------ 'a' | 1 | NaN | NaN | NaN 'b' | 12 | 5 | NaN | 4 'c' | 3 | 6 | NaN | NaN 'd' | 4 | 7 | 6 | NaN 'f' | 1 | 8 | 7 | 10我怎樣才能得到有值的行和Nan列。我找了幾個小時,但所有的問題、答案和博客都是關于獲取包含值的所有行或所有列NaN。我做了以下代碼:row_has_NaN = df.isnull().any(axis=1)rows_list = df[row_has_NaN].index.values # Rowsfor row in rows_list: print(row) row_series = df.loc[row] columns_has_NaN = row_series.isnull() columns_list = row_series[columns_has_NaN].index.values # Columns by Row to_print = '\n\t'.join(columns_list) print(f"\t{to_print}")所以我得到:a val2 val3 val4b val3c val3 val4d val4但我想知道是否有更 Pythonic 或更簡潔的方法來做到這一點。提前致謝
在包含 NaN 值的 Pandas Dataframe 中獲取行和列的 Pythonic 方法
慕桂英4014372
2023-06-06 17:34:01