首页 > 解决方案 > 这是来自更大函数的一段代码,但我不明白这部分是做什么的,谁能解释一下?

问题描述

这是代码的一部分,我相信它在 df 的 2 到 800 的列范围内做某事,但我不确定。 substr(names(df)[2:800],1,2)

标签: r

解决方案


如果你把它分解成小的单独的步骤,你会更容易理解。

我们mtcars在这里举个例子——

names(mtcars)返回数据框的所有列名

names(mtcars)
# [1] "mpg"  "cyl"  "disp" "hp"   "drat" "wt"   "qsec" "vs"   "am"   "gear" "carb"

2:800列号 2 到 800 的下一个子集名称。这里我们可以取 2 到 6。

names(mtcars)[2:6]
#[1] "cyl"  "disp" "hp"   "drat" "wt"  

substr返回这些列名的前两个字符

substr(names(mtcars)[2:6], 1, 2)
#[1] "cy" "di" "hp" "dr" "wt"

推荐阅读