R中数据帧中的处理列表

R中数据帧中的处理列表,r,list,dataframe,R,List,Dataframe,我在计算每家公司产生的利润时遇到了麻烦。 例如:考虑以下数据集 Production company Profits A 35000 c(B,C) 15000 D 750000 c(E,F,G) 100000 我需要想出一个办法,让每个公司都能平均分配利润。预期产出: Production company Profits A 3

我在计算每家公司产生的利润时遇到了麻烦。 例如:考虑以下数据集

Production company  Profits
A                    35000
c(B,C)               15000
D                   750000
c(E,F,G)            100000
我需要想出一个办法,让每个公司都能平均分配利润。预期产出:

Production company  Profits
A                     35000
B                      7500
C                      7500
D                    750000
E                     33333
F                     33333
G                     33333

谁能帮我在R中实现这一点?生产公司是一个列表,因此不列出列没有帮助。

由于您没有提到您的数据结构,我假设它是一个数据框,其中列的结构为列表。如果是这种情况,你可以试试这个

library(tidyverse)
玩具示例:-

df <- data.frame(val = c(1000, 7600, 2000))
df$pc <- list("A",c("B","C"), "D")
输出

  #    pc newval
  #  1  A   1000
  #  2  B   3800
  #  3  C   3800
  #  4  D   2000
  #    pc newval
  #  1  A   1000
  #  2  B   3800
  #  3  C   3800
  #  4  D   2000