2017-05-15 10 views
0

grep 및 subset 명령으로 R에서 행을 선택하려고하면 RStudio 쉘에서 행 단위로 실행될 때 올바르게 채워집니다. 그러나 r.script를 실행하면 열 (변수) 이름 만 복사되지만 채워지지는 않습니다. 기본적으로 SQL 형식으로 grep은 쉘에서 작동하지만 r.script에서는 작동하지 않습니다.

# Reads in yearly data 
YearlyData <- read.csv(file="2017.csv", header = FALSE, sep=",") 

# Sorts and only include TMAX and TMIN 
YearlyDataTMAXMIN <- subset(YearlyData, grepl("TMAX|TMIN", YearlyData$TYPE)) 

, 내가 할 노력하고 있어요,

R.

에서

SELECT * FROM YearlyData WHERE TYPE in ('TMAX, TMIN') 

이 나는 ​​뭔가를 놓치고 있습니까?

감사

+0

내 전화 주문이 잘못되었다고 생각합니다. 스크립트의 맨 아래로 옮겼습니다. – Zacharyj7

답변

0

당신의 SQL에서 더 정확한 번역이 될 것

subset(YearlyData, TYPE == "TMAX" | TYPE == "TMIN") 

또는

subset(YearlyData, TYPE %in% c("TMAX", "TMIN")) 

의미 론적 차이는 grepl는 "TMAX"또는 "TMIN이 열을 일치한다는 것입니다 "부분 문자열, 예 : "0123TMAX4567".

+0

팁 주셔서 감사! – Zacharyj7