gpt4 book ai didi

r - 根据大于或小于前一列中的条件,向 R 中的数据框添加一列

转载 作者:行者123 更新时间:2023-12-04 12:26:33 27 4
gpt4 key购买 nike

一个非常基本的问题。我有一个包含 14 个变量和 576 个观测值的数据框。

>  head(Boston)
crim zn indus chas nox rm age dis rad tax ptratio black lstat medv
1 0.00632 18 2.31 0 0.538 6.575 65.2 4.0900 1 296 15.3 396.90 4.98 24.0
2 0.02731 0 7.07 0 0.469 6.421 78.9 4.9671 2 242 17.8 396.90 9.14 21.6
3 0.02729 0 7.07 0 0.469 7.185 61.1 4.9671 2 242 17.8 392.83 4.03 34.7
4 0.03237 0 2.18 0 0.458 6.998 45.8 6.0622 3 222 18.7 394.63 2.94 33.4
5 0.06905 0 2.18 0 0.458 7.147 54.2 6.0622 3 222 18.7 396.90 5.33 36.2
6 0.02985 0 2.18 0 0.458 6.430 58.7 6.0622 3 222 18.7 394.12 5.21 28.7
  1. 我想创建一个新列 CATMEDV填充值为 10对于每条记录。如果medv > 30.0, CATMEDV=1 , IF medv < 30, CATMEDV=0

  2. 如果我想添加多个条件,比如 medv>30.0rm>7然后 CATMEDV=1, else 0 .我该怎么做?

此外,每次我将 R 控制台中的数据框粘贴到问题时,它都会变得困惑,并且某些版主会重新格式化它。如何在不混淆 R 格式的情况下将数据框粘贴到问题窗口中?

最佳答案

您可以使用函数 ifelse :

x <- data.frame(medv=rnorm(10, mean=30), rm=rnorm(10, mean=7))
x$CATMEDV <- ifelse(x$medv>30.0 & x$rm>7, 1, 0)
x
medv rm CATMEDV
1 30.59482 8.139964 1
2 29.64808 6.565482 0
3 30.99625 5.875143 0
4 31.46609 7.848523 1
5 29.65703 7.875010 0
6 29.47165 7.023216 0
7 28.26122 8.046844 0
8 31.62395 6.007356 0
9 32.10948 7.423388 1
10 29.53155 6.098616 0

关于r - 根据大于或小于前一列中的条件,向 R 中的数据框添加一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21938964/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com