【问题标题】:Change values of rows by a list data with Pandas使用 Pandas 通过列表数据更改行的值
【发布时间】:2020-08-15 05:32:40
【问题描述】:

我很难尝试从特定索引的数据框中更新数据。

示例数据框:

    author   episode_number      episode_title  quote     
0   Monica              1.0           Roommate     Hi  
1   Monica              1.0           Roommate     Ho
2   Monica              1.0           Roommate     Ha
3   Monica              1.0           Roommate     He
4   Monica              1.0           Roommate     Hu
...    ...              ...                ...    ...
61125 rows × 4 columns

我要做的是:拥有一系列索引,我想通过值列表更新数据集特定列中的数据。

例如:将“作者”列中的所有值从索引 100 更改为 200,更改为具有相同大小 (100) 的列表中的值。

我一直在考虑使用类似 iterrows() 的东西,但我知道这是一种反模式解决方案。那么最好的方法是什么?

【问题讨论】:

    标签: python pandas dataframe dataset


    【解决方案1】:
    • 这是一种方式
    names = ['a', 'b', 'c']
    df.iloc[1:4, 0] = names  # +1 to the length (e.g. 100:201)
    
    print(df)
    
       author  episode_number episode_title quote
    0  Monica             1.0      Roommate    Hi
    1       a             1.0      Roommate    Ho
    2       b             1.0      Roommate    Ha
    3       c             1.0      Roommate    He
    4  Monica             1.0      Roommate    Hu
    

    【讨论】:

      猜你喜欢
      • 2022-08-14
      • 1970-01-01
      • 2017-06-12
      • 1970-01-01
      • 2020-11-10
      • 2022-12-17
      • 2020-07-24
      • 1970-01-01
      • 2021-02-03
      相关资源
      最近更新 更多