Paj*_*jul 7 python dataframe pandas
我拼命地想弄清楚如何打印出我的 df 中特定值的行索引和列名。
我有以下 df:
raw_data = {'first_name': [NaN, 'Molly', 'Tina', 'Jake', 'Amy'],
'last_name': ['Miller', 'Jacobson', 'Ali', 'Milner', 'Cooze'],
'age': [42, 52, NaN, 24, 73],
'preTestScore': [4, 24, 31, 33, 3],
'postTestScore': [25, 94, 57, 62, 70]}
df = pd.DataFrame(raw_data, columns = ['first_name', 'last_name', 'age',
'preTestScore','postTestScore'])
Run Code Online (Sandbox Code Playgroud)
我现在想打印出 NaN 的索引和列名:
There is a missing value in row 0 for first_name.
There is a missing value in row 2 for age.
Run Code Online (Sandbox Code Playgroud)
我搜索了很多东西,总能找到如何为一行做一些事情。我的想法是先用 False 和 True 创建一个 df
na = df.isnull()
Run Code Online (Sandbox Code Playgroud)
然后我想应用一些函数来打印每个 NaN 值的行号和 col_name。我只是不知道如何做到这一点。
在此先感谢您的帮助!
你可以做类似下面的事情:
for i, row in df.iterrows():
nans = row[row.isna()].index
for n in nans:
print('row: %s, col: %s' % (i, n))
Run Code Online (Sandbox Code Playgroud)