R 如何像';关于列名?

R 如何像';关于列名?,r,R,示例代码 df <- read.csv('datafile.csv') columnNames <- c('col1','col2') df[接受字符串,而$不接受字符串 for (cname in names(mtcars)) { print(mtcars[, cname]) } 另见: > fortunes::fortune(343) 大多数R初学者迟早会被这条太方便的捷径所困扰 作为您的银行账户:过度使用美元提取可能会导致不良后果。最好购买 “[[”和“[”

示例代码

df <- read.csv('datafile.csv')
columnNames <- c('col1','col2')

df
[
接受字符串,而
$
不接受字符串

for (cname in names(mtcars)) {
    print(mtcars[, cname])
}
另见:

> fortunes::fortune(343)
大多数R初学者迟早会被这条太方便的捷径所困扰 作为您的银行账户:过度使用美元提取可能会导致不良后果。最好购买 “[[”和“[”习惯早就养成了。--彼得·埃勒斯(关于$-提取的使用) R-help(2013年3月)

正如@Buckminster指出的,
[
也是矢量化的,您可能不需要循环:

cols = c("mpg", "disp", "cyl")
mtcars[, cols]

[
接受字符串,而
$
不接受字符串

for (cname in names(mtcars)) {
    print(mtcars[, cname])
}
另见:

> fortunes::fortune(343)
大多数R初学者迟早会被这条太方便的捷径所困扰 作为您的银行账户:过度使用美元提取可能会导致不良后果。最好购买 “[[”和“[”习惯早就养成了。--彼得·埃勒斯(关于$-提取的使用) R-help(2013年3月)

正如@Buckminster指出的,
[
也是矢量化的,您可能不需要循环:

cols = c("mpg", "disp", "cyl")
mtcars[, cols]

[
接受字符串,而
$
不接受字符串

for (cname in names(mtcars)) {
    print(mtcars[, cname])
}
另见:

> fortunes::fortune(343)
大多数R初学者迟早会被这条太方便的捷径所困扰 作为您的银行账户:过度使用美元提取可能会导致不良后果。最好购买 “[[”和“[”习惯早就养成了。--彼得·埃勒斯(关于$-提取的使用) R-help(2013年3月)

正如@Buckminster指出的,
[
也是矢量化的,您可能不需要循环:

cols = c("mpg", "disp", "cyl")
mtcars[, cols]

[
接受字符串,而
$
不接受字符串

for (cname in names(mtcars)) {
    print(mtcars[, cname])
}
另见:

> fortunes::fortune(343)
大多数R初学者迟早会被这条太方便的捷径所困扰 作为您的银行账户:过度使用美元提取可能会导致不良后果。最好购买 “[[”和“[”习惯早就养成了。--彼得·埃勒斯(关于$-提取的使用) R-help(2013年3月)

正如@Buckminster指出的,
[
也是矢量化的,您可能不需要循环:

cols = c("mpg", "disp", "cyl")
mtcars[, cols]

或者更简单地说(虽然OP确实请求循环),
df[,columnNames]
默认情况下将打印列!@Buckminster true,并且无论OP做什么循环都可能不需要。但是,我打赌这是一个简化的情况,OP的目标不仅仅是打印列。或者更简单(虽然OP确实请求循环),
df[,columnNames]
默认情况下将打印列!@Buckminster true,并且无论OP做什么循环都可能不需要。但是,我打赌这是一个简化的情况,OP的目标不只是打印列。或者更简单(尽管OP确实请求循环),
df[,columnNames]
默认情况下会打印列!@Buckminster true,并且true,无论OP在做什么,都可能不需要循环。但是,我打赌这是一个简化的情况,OP的目标不仅仅是打印列。或者更简单一些(尽管OP确实请求循环),
df[,columnNames]
默认情况下会打印列!@Buckminster true,并且无论OP做什么,都可能不需要循环。但是,我打赌这是一个简化的情况,OP的目标不仅仅是打印列。你并不真的需要循环。试试
c(df[columnNames])
你真的不需要循环。试试
c(df[columnNames])
你不需要循环。试试
c(df[columnNames])
你不需要循环。试试
c(df[columnNames])