将一列中的每个值除以 R 中另一列中的每个值(对于每个因子水平)

用户7395965

我有一个包含 A 列和 B 列值的数据框。还有另一列“频率”有 6 个级别:https : //www.dropbox.com/s/5o2oaettbkbzwf9/datadata.csv?dl=0

我必须从 A 列中取出第一个值并将其除以 B 列中的每个值(但仅当 A 和 B 值属于同一因子“频率”级别时)。我必须对 A 列中的所有值重复相同的操作。我应该创建一个新的数据框。它应该有关于“频率”级别的信息。我从来没有做过这样的事情......如果有人知道解决方案和一些简单的解释,我将不胜感激。

完美的

考虑使用by将数据帧分成每个频率级别的,然后运行expand.grid操作来绑定 A 和 B 的所有可能组合。然后将两者相除。使用cbind检索当前频率。并且!is.na(...)是过滤掉NA。

df <- read.csv('/path/to/datadata.csv')

dfList <- by(df, df$frequency, function(i){      
  a_b_df <- cbind(frequency=max(as.character(i$frequency)),
                  expand.grid(A=i$A[!is.na(i$A)], B=i$B[!is.na(i$B)]))

  a_b_df$div <- a_b_df$A / a_b_df$B
  return(a_b_df)
})

# FIRST DF ELEMENT, 10K
head(dfList$`10K`)
#   frequency         A        B       div
# 1       10K 0.2649175 2.541833 0.1042230
# 2       10K 0.6181931 2.541833 0.2432076
# 3       10K 1.1950971 2.541833 0.4701714
# 4       10K 2.6086954 2.541833 1.0263048
# 5       10K 0.3557454 2.541833 0.1399562
# 6       10K 1.9483414 2.541833 0.7665104

# SECOND DF ELEMENT, 12.5K
head(dfList$`12.5K`)
#   frequency         A        B       div
# 1     12.5K 1.3723178 2.138316 0.6417750
# 2     12.5K 1.2204621 2.138316 0.5707585
# 3     12.5K 1.1798552 2.138316 0.5517684
# 4     12.5K 0.5880284 2.138316 0.2749960
# 5     12.5K 0.4865612 2.138316 0.2275441
# 6     12.5K 0.5011111 2.138316 0.2343485

# ROW BIND ALL DF ELEMENTS INTO ONE LARGE DF
big_df <- do.call(rbind, dfList)

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R将数据框中的每一列除以最后一行的值

来自分类Dev

为另一列中的每个值获取一列中相似值的总和

来自分类Dev

R-将矩阵中的每个值除以其行/列的最大值

来自分类Dev

在标准SQL中,如何选择行,以便对于一列中的每个唯一值,另一列中的所有值都是指定值?

来自分类Dev

如果一列中的值大于另一列中的值,则交换R中各列中的值

来自分类Dev

如何将数据帧因子列扩展为R中每个级别的一列?

来自分类Dev

如何将一列中的值归为另一个R中的每个唯一值?

来自分类Dev

将每列除以R中的上一列

来自分类Dev

如何计算与R中另一列中的每个值相对应的列中每个值的频率?

来自分类Dev

根据R中另一列的值选择列

来自分类Dev

基于R中另一列的值进行计数

来自分类Dev

将一列中的每个值与一个数据帧中的另一列中的每个值进行检查

来自分类Dev

R:将一列中的每个不同值组合到另一列中

来自分类Dev

R-对于一列中的每个观测值,在另一列中找到最接近的一个

来自分类Dev

如何获得另一列R的每个级别的一列最大值的索引

来自分类Dev

将列表列表转换为单个数据框,其中第一列由R中的第一个值(对于每个列表)填充

来自分类Dev

将一列条件中的值替换为另一列:R

来自分类Dev

如果另一列中的值在列表中,则更改一列中的值[R]

来自分类Dev

根据R中另一列的最小值获得一列的对应值

来自分类Dev

R data.table:使用另一列中的值为面板中的每个组重新设置基础

来自分类Dev

汇总一列中的值并按R中的另一列分组

来自分类Dev

R将数据框中的每一列除以最后一行的值

来自分类Dev

R colnames()将列表中的每个元素分配给第一列

来自分类Dev

在标准SQL中,如何选择行,以便对于一列中的每个唯一值,另一列中的所有值都是指定值?

来自分类Dev

如何将数据帧因子列扩展为R中每个级别的一列?

来自分类Dev

对于r中的每个组,将NA替换为同一列的另一行中的值

来自分类Dev

一列的每个字符串与 R 中另一列的每个字符串的组合

来自分类Dev

根据r中的ID从另一列中的一列中查找值

来自分类Dev

根据 R 中另一列中的值设置一列的值

Related 相关文章

  1. 1

    R将数据框中的每一列除以最后一行的值

  2. 2

    为另一列中的每个值获取一列中相似值的总和

  3. 3

    R-将矩阵中的每个值除以其行/列的最大值

  4. 4

    在标准SQL中,如何选择行,以便对于一列中的每个唯一值,另一列中的所有值都是指定值?

  5. 5

    如果一列中的值大于另一列中的值,则交换R中各列中的值

  6. 6

    如何将数据帧因子列扩展为R中每个级别的一列?

  7. 7

    如何将一列中的值归为另一个R中的每个唯一值?

  8. 8

    将每列除以R中的上一列

  9. 9

    如何计算与R中另一列中的每个值相对应的列中每个值的频率?

  10. 10

    根据R中另一列的值选择列

  11. 11

    基于R中另一列的值进行计数

  12. 12

    将一列中的每个值与一个数据帧中的另一列中的每个值进行检查

  13. 13

    R:将一列中的每个不同值组合到另一列中

  14. 14

    R-对于一列中的每个观测值,在另一列中找到最接近的一个

  15. 15

    如何获得另一列R的每个级别的一列最大值的索引

  16. 16

    将列表列表转换为单个数据框,其中第一列由R中的第一个值(对于每个列表)填充

  17. 17

    将一列条件中的值替换为另一列:R

  18. 18

    如果另一列中的值在列表中,则更改一列中的值[R]

  19. 19

    根据R中另一列的最小值获得一列的对应值

  20. 20

    R data.table:使用另一列中的值为面板中的每个组重新设置基础

  21. 21

    汇总一列中的值并按R中的另一列分组

  22. 22

    R将数据框中的每一列除以最后一行的值

  23. 23

    R colnames()将列表中的每个元素分配给第一列

  24. 24

    在标准SQL中,如何选择行,以便对于一列中的每个唯一值,另一列中的所有值都是指定值?

  25. 25

    如何将数据帧因子列扩展为R中每个级别的一列?

  26. 26

    对于r中的每个组,将NA替换为同一列的另一行中的值

  27. 27

    一列的每个字符串与 R 中另一列的每个字符串的组合

  28. 28

    根据r中的ID从另一列中的一列中查找值

  29. 29

    根据 R 中另一列中的值设置一列的值

热门标签

归档