nan_rows = []
for index, row in df.iterrows():
topic = row['topic']
if topic != np.nan:
nan_rows.append(row)
我想将我的数据帧分成两部分:如果“主题”值为 nan,则将其提取出来。但是上面的代码不起作用。这是为什么?
答案 0 :(得分:0)
这是一个如何按 isnull()
分组并将两个组分别分配给一个数据帧的最小示例。
df = pd.DataFrame({'topic':[np.nan, 1, np.nan, 1]})
>>> df
topic
0 NaN
1 1.0
2 NaN
3 1.0
grouper = df.groupby(df.topic.isnull())
>>> grouper.groups
{False: [1, 3], True: [0, 2]}
df_True = grouper.get_group(True)
>>> df_True
topic
0 NaN
2 NaN
df_False = grouper.get_group(False)
>>> df_False
topic
1 1.0
3 1.0