8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

在数据框中每个组的最后一行添加新行

Syed M. Sannan 2月前

34 0

我的原始数据框如下:List = [['2024-05-25', 'Group 1', 'Year 1', 23466882], ['2024-05-25', 'Group 1', 'Year 2', 458397284], ['2024-05-25', 'Group 1', 'Year 3', 2344545], ['2024-05-25', '

我的原始数据框如下:

List = [['2024-05-25', 'Group 1', 'Year 1', 23466882], ['2024-05-25', 'Group 1', 'Year 2', 458397284], ['2024-05-25', 'Group 1', 'Year 3', 2344545], ['2024-05-25', 'Group 2', 'Year 1', 6662345], ['2024-05-25', 'Group 2', 'Year 2', 46342], ['2024-05-25', 'Group 3', 'Year 1', 34234], ['2024-05-25', 'Group 3', 'Year 2', 45222]]
df = pd.DataFrame(List, columns = ['Report_date', 'Product_group', 'Year', 'Sales'])

enter image description here

对于每个产品组,如果不存在“第 3 年”,则应在末尾添加一个销售额为 11,000 的新行。

输出应如下所示:

enter image description here

我最初的想法是将数据框拆分成每个产品组,如果子数据框没有第 3 年的任何信息,则添加新行,但这种方法似乎不是最佳的。

欢迎提出任何意见。提前谢谢您!

帖子版权声明 1、本帖标题:在数据框中每个组的最后一行添加新行
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Syed M. Sannan在本站《dataframe》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 如果仅需要 Year 3 为每个组添加缺失年份,请使用 pd.concat 带有第一个不存在组的筛选行并添加新 Year Sales

    注意:此解决方案仅为不存在的年份 3 添加新行,如果任何组中不存在相同的年份,此解决方案也有效。例如,如果删除第一行,则年份 1 会丢失。

    g = df.loc[df['Year'].eq('Year 3'), 'Product_group']
    
    out = (pd.concat([df, 
                      df.loc[~df['Product_group'].isin(g)]
                        .drop_duplicates('Product_group').assign(Year='Year 3', Sales=11000)])
              .sort_values(['Product_group','Year'], ignore_index=True))
    print (out)
      Report_date Product_group    Year      Sales
    0  2024-05-25       Group 1  Year 1   23466882
    1  2024-05-25       Group 1  Year 2  458397284
    2  2024-05-25       Group 1  Year 3    2344545
    3  2024-05-25       Group 2  Year 1    6662345
    4  2024-05-25       Group 2  Year 2      46342
    5  2024-05-25       Group 2  Year 3      11000
    6  2024-05-25       Group 3  Year 1      34234
    7  2024-05-25       Group 3  Year 2      45222
    8  2024-05-25       Group 3  Year 3      11000
    
返回
作者最近主题: