R中的混合型变量

R中的混合型变量,r,R,我是R的新用户。我有这种数据类型。如何将不同类型的变量(如二进制变量、计数变量或其他连续变量)与它们分开 V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12 0.17 0 0 12 22 2 1 1 240.215 65.049 1.478 114 0.15 1 0 13 22 2 1 1 247.133 66.315 1.474 120 0.16 0

我是R的新用户。我有这种数据类型。如何将不同类型的变量(如二进制变量、计数变量或其他连续变量)与它们分开

V1    V2  V3  V4  V5   V6  V7  V8  V9       V10     V11    V12
0.17  0   0   12  22   2   1   1   240.215  65.049  1.478  114
0.15  1   0   13  22   2   1   1   247.133  66.315  1.474  120
0.16  0   0   12  22   2   0   1   233.329  58.163  1.353  110
0.07  0   0   12  20   2   0   1   219.660  56.162  1.370  114
0.11  0   0   12  26   2   0   2   289.294  70.844  1.389  134

提前谢谢

您可以使用功能
typeof
确定对象的存储模式

示例数据帧:

dat <- data.frame(a = 1:2,
                  b = c(0.5, -1.3),
                  c = c("a", "b"),
                  d = c(TRUE, FALSE), stringsAsFactors = FALSE)
结果是:

$a
[1] "integer"

$b
[1] "double"

$c
[1] "character"

$d
[1] "logical"
例如,如果要选择所有字符列,可以使用:

dat[sapply(dat, typeof) == "character"] # possibility 1
dat[sapply(dat, is.character)]          # possibility 2
# both commands will return the same result

  c
1 a
2 b

PS:您还应该查看功能
模式
存储。模式
您可以使用功能
类型
来确定对象的存储模式

示例数据帧:

dat <- data.frame(a = 1:2,
                  b = c(0.5, -1.3),
                  c = c("a", "b"),
                  d = c(TRUE, FALSE), stringsAsFactors = FALSE)
结果是:

$a
[1] "integer"

$b
[1] "double"

$c
[1] "character"

$d
[1] "logical"
例如,如果要选择所有字符列,可以使用:

dat[sapply(dat, typeof) == "character"] # possibility 1
dat[sapply(dat, is.character)]          # possibility 2
# both commands will return the same result

  c
1 a
2 b

PS:您还应该看看功能
mode
storage。mode

除了
typeof
str
summary
还有其他可能性。这些也可以直接应用于数据帧,即不需要
lappy
或循环。

除了
typeof
之外,
str
summary
还有其他可能性。这些也可以直接应用于数据帧,即不需要
lappy
或循环;请准确描述你的赠品是什么,你需要获得什么,你尝试了什么。@KonradRudolph我已经更新了数据集。谢谢你的问题很不清楚;请准确描述你的赠品是什么,你需要获得什么,你尝试了什么。@KonradRudolph我已经更新了数据集。谢谢如何从dat中选择或提取所有字符列?@user2459558如果此答案解决了您的问题,您可以通过单击复选标记来接受它。@SvenHohenstein此答案与我想要的有点不同。我想知道它们中的哪一个是二进制的、计数的或连续的等等…@SvenHohenstein抱歉,这对我不起作用。上面写着整数,双精度等等。。但是它不能说出我想要的变量类型,因为我所有的数据都是数值。@user2459558整数值和双数值都是数值。从本质上讲,连续变量存储为double。计数很可能是整数。如何从dat中选择或提取所有字符列?@user2459558如果此答案解决了您的问题,您可以通过单击复选标记来接受它。@SvenHohenstein此答案与我想要的有点不同。我想知道它们中的哪一个是二进制的、计数的或连续的等等…@SvenHohenstein抱歉,这对我不起作用。上面写着整数,双精度等等。。但是它不能说出我想要的变量类型,因为我所有的数据都是数值。@user2459558整数值和双数值都是数值。从本质上讲,连续变量存储为double。计数很可能是整数。