目标是从df创建一个新列,如果“%Renewable”列中的值等于或高于中位数,则创建一个新值;如果该值低于中位数,则为0。
df = pd.DataFrame({'% Renewable': [np.NaN, 12, np.NaN, 11, 17, 62, 18, 15, np.NaN, 2, np.NaN, np.NaN, 6, np.NaN, 70]},
index=['China', 'United States', 'Japan', 'United Kingdom', 'Russian Federation', 'Canada', 'Germany', 'India', 'France', 'South Korea', 'Italy', 'Spain', 'Iran', 'Australia', 'Brazil'])
我得到了中位数:
median = df['% Renewable'].median()
但现在呢?我应该使用get_dummies功能吗?或者也许削减?
答案 0 :(得分:1)
这应该可以解决问题:
df['new_column'] = df['% Renewable'] >= median