【问题标题】:Replace all numeric values with NaN Pandas用 NaN Pandas 替换所有数值
【发布时间】:2022-07-06 18:27:27
【问题描述】:

我有一个如下所示的数据框:

data = {'Region': ['Africa','Africa','Africa','Africa','Africa','Africa','Africa','Africa','Asia','Asia','Asia','Asia'],
         'Country': ['South Africa','South Africa','South Africa','South Africa','South Africa','South Africa','South Africa','South Africa','Japan','Japan','Japan','Japan'],
         'Product': ['ABC','ABC','ABC','ABC','XYZ','XYZ','XYZ','XYZ','DEF','DEF','DEF','DEF'],
         'Year': [2016, 2017, 2018, 2019,2016, 2017, 2018, 2019,2016, 2017, 2018, 2019],
         'Price': [500, 400, 0,450,750,0,0,890,0,0,415,0],
         'Quantity': [1200,1700,0,330,500,0,0,120,300,0,50,0],
         'Value': [600000,680000,0,148500,350000,0,0,106800,0,0,20750,0]}

df = pd.dataframe(data)

我想用 NaN 替换所有数值(即年、价格、数量、价值列中的数值),但我想不出一个好方法。

【问题讨论】:

    标签: python pandas numpy


    【解决方案1】:

    用途:

    df[df.select_dtypes(np.number).columns] = np.nan
    

    【讨论】:

      【解决方案2】:

      试试这个:

      >>> df[['Year', 'Price', 'Quantity', 'Value']] = np.nan
      

      【讨论】:

        猜你喜欢
        • 2021-03-08
        • 2017-01-22
        • 2021-06-29
        • 1970-01-01
        • 2018-11-14
        • 1970-01-01
        • 2018-03-18
        • 2017-07-04
        • 1970-01-01
        相关资源
        最近更新 更多