根据另一个数据帧中的值使用循环创建和填充多列

菱铁矿

我目前有一个数据框,看起来像这样:

    speed <- c(61,24,3,10,18,19,12,12,7,9)
    distance <-c(58,111,92,93,84,103,83,93,88,81)
    df <- as.data.frame(cbind(speed, distance))

我想根据速度值将速度变量分为不同的列。例如,对于示例数据框,我希望它看起来像这样:

    under50 <- rep(NA,10)
    under100<- c(61,3,10,18,12,12,7,9,NA,NA)
    under150 <- c(61,24,3,10,18,19,12,12,7,9)
    df2 <- as.data.frame(cbind(under50, under100, under150))

我希望它尽可能自动化,因为我有23个数据帧,每个数据帧有100多个行,但不确定从哪里开始。任何帮助将不胜感激!

耶洛华德

所以这是另一种方式:

breaks=c(50,100,150)
result <- data.frame(sapply(breaks,function(x)with(df,ifelse(distance<x,speed,NA))))
result <- sapply(result,function(x)c(na.omit(x),rep(NA,sum(is.na(x)))))
colnames(result) <- paste0("under",breaks)
result
#       under50 under100 under150
#  [1,]      NA       61       61
#  [2,]      NA        3       24
#  [3,]      NA       10        3
#  [4,]      NA       18       10
#  [5,]      NA       12       18
#  [6,]      NA       12       19
#  [7,]      NA        7       12
#  [8,]      NA        9       12
#  [9,]      NA       NA        7
# [10,]      NA       NA        9

该行:

result <- data.frame(sapply(breaks,function(x)with(df,ifelse(distance<x,speed,NA))))

利用ifelse(...)函数ro returnspeedNA取决于的值distance该行:

result <- sapply(result,function(x)c(na.omit(x),rep(NA,sum(is.na(x)))))

将NA移到末尾。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据另一个数据帧中的值将数据帧的列相乘

来自分类Dev

R替换另一个数据帧中的多列值

来自分类Dev

根据另一个数据集中的列值在一个数据框中创建列

来自分类Dev

根据另一个数据帧在R数据帧中创建变量

来自分类Dev

使用一个数据帧列的元素选择另一个数据帧中的值以使用 Tidyverse 创建第三个数据帧

来自分类Dev

Python根据另一个数据框值中存在的列索引填充数据框值

来自分类Dev

尝试使用来自另一个不同结构的数据帧的值填充数据帧中的列

来自分类Dev

根据两个列值是否存在于另一个数据帧中组合两个数据帧

来自分类Dev

根据来自另一个数据集的列中的匹配字符串来填充列的值

来自分类Dev

根据一组预定义的列填充另一个数据框中的值

来自分类Dev

基于R中另一个数据帧中的列填充数据帧中的列

来自分类Dev

用另一个数据框的值填充多列

来自分类Dev

用另一个数据框的值填充多列

来自分类Dev

使用另一个数据框的唯一值创建并填充一个数据框

来自分类Dev

从另一个数据帧中查找元素以在 Python 中创建多索引数据帧

来自分类Dev

使用PySpark数据帧时,根据索引从一个数组中定位值,然后复制到另一个数组中

来自分类Dev

根据来自另一个数据帧的数据为 Pandas 数据帧中的列赋值

来自分类Dev

根据与另一个数据帧的比较更新数据帧值

来自分类Dev

如何从 PySpark 中另一个数据帧的列中创建数据帧中的列

来自分类Dev

R:根据条件(不同大小的数据帧),从另一个数据帧的列中为列分配值

来自分类Dev

根据来自另一个数据帧的值替换数据帧中的行元素

来自分类Dev

根据R中另一个数据帧内的列从数据帧中删除变量

来自分类Dev

在R中,如何根据另一个数据帧中的范围对一个数据帧中的值进行分类?

来自分类Dev

Python Pandas:根据另一个数据框的类别值创建新列

来自分类Dev

根据另一个数据框重命名多列中的记录

来自分类Dev

根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

来自分类Dev

根据匹配的列值将元素从一个数据帧映射到另一个数据帧

来自分类Dev

从列中的另一个数据帧返回具有不同值的行

来自分类Dev

如何从另一个数据帧中的列创建数据帧,该列用逗号“,”连接

Related 相关文章

  1. 1

    根据另一个数据帧中的值将数据帧的列相乘

  2. 2

    R替换另一个数据帧中的多列值

  3. 3

    根据另一个数据集中的列值在一个数据框中创建列

  4. 4

    根据另一个数据帧在R数据帧中创建变量

  5. 5

    使用一个数据帧列的元素选择另一个数据帧中的值以使用 Tidyverse 创建第三个数据帧

  6. 6

    Python根据另一个数据框值中存在的列索引填充数据框值

  7. 7

    尝试使用来自另一个不同结构的数据帧的值填充数据帧中的列

  8. 8

    根据两个列值是否存在于另一个数据帧中组合两个数据帧

  9. 9

    根据来自另一个数据集的列中的匹配字符串来填充列的值

  10. 10

    根据一组预定义的列填充另一个数据框中的值

  11. 11

    基于R中另一个数据帧中的列填充数据帧中的列

  12. 12

    用另一个数据框的值填充多列

  13. 13

    用另一个数据框的值填充多列

  14. 14

    使用另一个数据框的唯一值创建并填充一个数据框

  15. 15

    从另一个数据帧中查找元素以在 Python 中创建多索引数据帧

  16. 16

    使用PySpark数据帧时,根据索引从一个数组中定位值,然后复制到另一个数组中

  17. 17

    根据来自另一个数据帧的数据为 Pandas 数据帧中的列赋值

  18. 18

    根据与另一个数据帧的比较更新数据帧值

  19. 19

    如何从 PySpark 中另一个数据帧的列中创建数据帧中的列

  20. 20

    R:根据条件(不同大小的数据帧),从另一个数据帧的列中为列分配值

  21. 21

    根据来自另一个数据帧的值替换数据帧中的行元素

  22. 22

    根据R中另一个数据帧内的列从数据帧中删除变量

  23. 23

    在R中,如何根据另一个数据帧中的范围对一个数据帧中的值进行分类?

  24. 24

    Python Pandas:根据另一个数据框的类别值创建新列

  25. 25

    根据另一个数据框重命名多列中的记录

  26. 26

    根据R中的两个匹配条件,将值从一个数据帧添加到另一个数据帧

  27. 27

    根据匹配的列值将元素从一个数据帧映射到另一个数据帧

  28. 28

    从列中的另一个数据帧返回具有不同值的行

  29. 29

    如何从另一个数据帧中的列创建数据帧,该列用逗号“,”连接

热门标签

归档