除了环境功能附加与 data.frames 一起工作之外,是否有 R 语言的作用域环境?
Is there a scoped environment fot the language R beyond the environment function attach to work with data.frames?
我有一个更大的编程语言 R 脚本并使用 tables。我有一个 table base.tab
ID LAT LON ALT.ORTHO TYPE TYPE.ID
1 1 53.75447 12.51539 46.5555 LINE 1
2 10 53.75452 12.51565 46.5445 LINE 1
3 11 53.75452 12.51567 46.5365 LINE 1
4 12 53.75453 12.51570 46.5715 LINE 1
5 13 53.75453 12.51573 46.5785 LINE 1
6 14 53.75454 12.51576 46.6885 LINE 1
并想在不使用 attach
或 subset
的情况下缩短某些表达式。而不是写
base.tab.epos <-
base.tab[(base.tab$TYPE == 'LINE') |
(base.tab$TYPE == 'RAND'), ]
我想在范围上下文中使用一些东西,例如:
with(base.tab) do {
base.tab.epos <-
base.tab[(TYPE == 'LINE') |
(TYPE == 'RAND'), ]
}
编程语言 R 中是否有表达式可以做到这一点?
R 有 with
/within
函数可以实现。
base.tab.epos <- base.tab[with(base.tab, TYPE == 'LINE' | TYPE == 'RAND'), ]
除此之外,您还可以查看 dplyr
,这将使您无需每次都使用 data$
即可引用列名。
library(dplyr)
base.tab.epos <- base.tab %>% filter(TYPE == 'LINE' | TYPE == 'RAND')
我有一个更大的编程语言 R 脚本并使用 tables。我有一个 table base.tab
ID LAT LON ALT.ORTHO TYPE TYPE.ID
1 1 53.75447 12.51539 46.5555 LINE 1
2 10 53.75452 12.51565 46.5445 LINE 1
3 11 53.75452 12.51567 46.5365 LINE 1
4 12 53.75453 12.51570 46.5715 LINE 1
5 13 53.75453 12.51573 46.5785 LINE 1
6 14 53.75454 12.51576 46.6885 LINE 1
并想在不使用 attach
或 subset
的情况下缩短某些表达式。而不是写
base.tab.epos <-
base.tab[(base.tab$TYPE == 'LINE') |
(base.tab$TYPE == 'RAND'), ]
我想在范围上下文中使用一些东西,例如:
with(base.tab) do {
base.tab.epos <-
base.tab[(TYPE == 'LINE') |
(TYPE == 'RAND'), ]
}
编程语言 R 中是否有表达式可以做到这一点?
R 有 with
/within
函数可以实现。
base.tab.epos <- base.tab[with(base.tab, TYPE == 'LINE' | TYPE == 'RAND'), ]
除此之外,您还可以查看 dplyr
,这将使您无需每次都使用 data$
即可引用列名。
library(dplyr)
base.tab.epos <- base.tab %>% filter(TYPE == 'LINE' | TYPE == 'RAND')