基于数据框中的两列创建新列

戴维斯

df在个人重复采样的情况下,我具有可复制性对于每个样本,我跟踪样本的获取顺序和使用的介质(A或B)。

dat <- data.frame(IndID = factor(c(1,1,2,2,2,3,3)),
          Order = c(1,2,1,2,3,1,2),
          Media = factor(c("A", "B", "B","A","B","A", "A")))
dat
  IndID Order Media
1     1     1     A
2     1     2     B
3     2     1     B
4     2     2     A
5     2     3     B
6     3     1     A
7     3     2     A

我要创建一个新列,其中包含“媒体”和一个数字,该数字表示“媒体”每个级别内的采样顺序。换句话说,按IndID和Media分组,我想创建一个新列来对样本进行排序。对于每个人,如果在两个不同的媒体中只有两个样本(如IndID 1),则新值将为“ A1”和“ B1”。如果同一媒体中有两个样本,则新值必须按照采样顺序的顺序分别为“ B1”和“ B2”。

鉴于以上数据,我正在尝试创建以下列

dat$WantThis <- c("A1", "B1","B1", "A1","B2", "A1", "A2")

  IndID Order Media WantThis
1     1     1     A       A1
2     1     2     B       B1
3     2     1     B       B1
4     2     2     A       A1
5     2     3     B       B2
6     3     1     A       A1
7     3     2     A       A2

我一直在尝试使用该dplyr程序包,但无法将应包含在内的点连接为的第二个参数paste

dat2 <- as.data.frame(dat %>% group_by(IndID, Media) %>% mutate(MediaOrder = paste0(Media, ???? )))

提前致谢。我欢迎任何建议。

艾伦

如果使用分组的行号,它应该可以为您提供所需的信息。

library(dplyr)

dat <- data.frame(IndID = factor(c(1,1,2,2,2,3,3)),
                  Order = c(1,2,1,2,3,1,2),
                  Media = factor(c("A", "B", "B","A","B","A", "A")))

res <- dat %>%
  group_by(IndID, Media) %>%
  mutate(count = row_number(),
         WantThis = paste(Media,count,sep=""))

#Source: local data frame [7 x 5]
#Groups: IndID, Media [5]
#
#   IndID Order  Media count WantThis
#  (fctr) (dbl) (fctr) (int)    (chr)
#1      1     1      A     1       A1
#2      1     2      B     1       B1
#3      2     1      B     1       B1
#4      2     2      A     1       A1
#5      2     3      B     2       B2
#6      3     1      A     1       A1
#7      3     2      A     2       A2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何基于两个不同数据框中的匹配值创建新列?

来自分类Dev

基于 if/elif/and 函数在 Pandas 数据框中创建新列

来自分类Dev

基于来自不同数据框的两列(不同长度)创建新列

来自分类Dev

如何在两个不同列表中包含的基于数据框的值中创建新列?

来自分类Dev

数据框基于其他列创建新列

来自分类Dev

如何基于在熊猫数据框中具有NaN的现有列创建新列?

来自分类Dev

使用rnorm函数从数据框中创建基于新列的其他列

来自分类Dev

在熊猫数据框中创建新列

来自分类Dev

如何基于熊猫中两列的时差创建新列?

来自分类Dev

Power BI:基于两列在“转换”中创建新列

来自分类Dev

合并数据框中的两列并在R中的现有数据框中创建新列

来自分类Dev

Pyspark-使用数据框中其他两个列的RMSE创建新列

来自分类Dev

如何根据单独数据框中的两列结果在数据框中创建新列?

来自分类Dev

如何基于python数据框中的两列组合创建唯一的代码

来自分类Dev

如何使用if else语句基于str值在r数据框中创建新列?

来自分类Dev

如何根据基于数据框中列名称的字典创建新列

来自分类Dev

如何基于R中特定列给出的子组创建新的数据框提取方法

来自分类Dev

基于同一数据框中的多个条件创建新列

来自分类Dev

基于主键从其他列中的数据创建新列

来自分类Dev

使用循环功能基于python中的两个不同数据框创建新数据框

来自分类Dev

如何基于两列中的值创建新变量

来自分类Dev

创建新的数据框列

来自分类Dev

R - 当两列或更多列在一行中匹配时在数据框中创建新列

来自分类Dev

在包含给定日期后的两年的数据框中创建新列

来自分类Dev

根据两个数据框中的行是否匹配来创建新列

来自分类Dev

分组汇总两列,并在pandas中创建新的数据框

来自分类Dev

从Pandas数据框中的其他列创建新列

来自分类Dev

使用字符串列表或字典基于数据框中的现有列创建新列

来自分类Dev

如何基于年份在Pandas数据框中创建多个列

Related 相关文章

  1. 1

    如何基于两个不同数据框中的匹配值创建新列?

  2. 2

    基于 if/elif/and 函数在 Pandas 数据框中创建新列

  3. 3

    基于来自不同数据框的两列(不同长度)创建新列

  4. 4

    如何在两个不同列表中包含的基于数据框的值中创建新列?

  5. 5

    数据框基于其他列创建新列

  6. 6

    如何基于在熊猫数据框中具有NaN的现有列创建新列?

  7. 7

    使用rnorm函数从数据框中创建基于新列的其他列

  8. 8

    在熊猫数据框中创建新列

  9. 9

    如何基于熊猫中两列的时差创建新列?

  10. 10

    Power BI:基于两列在“转换”中创建新列

  11. 11

    合并数据框中的两列并在R中的现有数据框中创建新列

  12. 12

    Pyspark-使用数据框中其他两个列的RMSE创建新列

  13. 13

    如何根据单独数据框中的两列结果在数据框中创建新列?

  14. 14

    如何基于python数据框中的两列组合创建唯一的代码

  15. 15

    如何使用if else语句基于str值在r数据框中创建新列?

  16. 16

    如何根据基于数据框中列名称的字典创建新列

  17. 17

    如何基于R中特定列给出的子组创建新的数据框提取方法

  18. 18

    基于同一数据框中的多个条件创建新列

  19. 19

    基于主键从其他列中的数据创建新列

  20. 20

    使用循环功能基于python中的两个不同数据框创建新数据框

  21. 21

    如何基于两列中的值创建新变量

  22. 22

    创建新的数据框列

  23. 23

    R - 当两列或更多列在一行中匹配时在数据框中创建新列

  24. 24

    在包含给定日期后的两年的数据框中创建新列

  25. 25

    根据两个数据框中的行是否匹配来创建新列

  26. 26

    分组汇总两列,并在pandas中创建新的数据框

  27. 27

    从Pandas数据框中的其他列创建新列

  28. 28

    使用字符串列表或字典基于数据框中的现有列创建新列

  29. 29

    如何基于年份在Pandas数据框中创建多个列

热门标签

归档