在 Pandas 中,可以使用 fillna()
方法来填充数据帧中的 NaN 值。要用随机的 1 和 0 填充 NaN,可以先创建一个与数据帧相同形状的随机数数据帧,然后使用 fillna()
方法将 NaN 替换为随机的 1 和 0。
下面是一个完整的示例代码:
import pandas as pd
import numpy as np
# 创建一个示例数据帧
df = pd.DataFrame({'A': [1, 2, np.nan, 4],
'B': [np.nan, 6, 7, 8],
'C': [9, 10, 11, np.nan]})
# 创建与数据帧相同形状的随机数数据帧
random_df = pd.DataFrame(np.random.randint(2, size=df.shape), columns=df.columns)
# 使用随机数数据帧填充 NaN
filled_df = df.fillna(random_df)
print(filled_df)
输出结果类似于:
A B C
0 1.0 0.0 9.0
1 2.0 6.0 10.0
2 1.0 7.0 11.0
3 4.0 8.0 0.0
在这个示例中,我们首先创建了一个示例数据帧 df
,其中包含了一些 NaN 值。然后,我们使用 np.random.randint()
方法创建了一个与 df
相同形状的随机数数据帧 random_df
,其中的值为 0 或 1。最后,我们使用 fillna()
方法将 df
中的 NaN 值替换为 random_df
中的随机数值,得到了填充后的数据帧 filled_df
。
请注意,这只是一种用随机的 1 和 0 填充 NaN 的方法,实际应用中可能需要根据具体需求进行调整。
领取专属 10元无门槛券
手把手带您无忧上云