R/R basic

[R기본] R로 데이터프레임 만들기, 행&열 뽑기, 부분 집합, 그리고 순서

시키테이 2020. 4. 26. 12:49
반응형

#기본적으로 가공의 데이터를 만듭니다. c는 복수의 데이터가 들어갈 때 반드시 써줘야 합니다. 

a<-c(1, 2, 3, 4)
b<-c('apple', 'pear', 'orange', 'banana')
c<-c(TRUE, FALSE, TRUE, FALSE)

#데이터 프레임 형태로 바꿉니다. 자동으로  a, b, c를 칼럼으로 인식합니다. 단 이는 a, b, c수가 일치할 때만. 

df<-data.frame(a, b, c)

#칼럼을 이름을 변경해줍니다. 

names(df)<-c('number', 'fruit', 'TF')

#각 칼럼별 속성 파악. str은 늘 쓰는 명령문이에요. 

str(df)

#selecting first row (첫번째 열 선택) [ ]가 쓰입니다. [ ] 쓰기가 익숙하지 않아도 데이타 프레임에서는 늘 신경 쓰셔야 합니다. 

df[1, ]

#selecting first column (첫번째 칼럼 선택)

df[ ,1]

 

#selecting fruit column (이번에는 칼럼을 이름으로 선택해봅니다, fruit column )

df[, 'fruit']

#selecting 2&3 rows in fruit column (fruit column에서 1, 2열만 뽑습니다)

df[1:2, 'fruit']



#showing columns in vector (칼럼 선택하는 방식은 여러가지가  있습니다). 두번째로 써도 같은 뜻입니다. 앞에 , 넣는 것 잊지 마시구요. ,를 넣는 건 전체 열을 고르라는 뜻입니다. 

df$number
df[, 'number'] 

#showing columns in data frame format #이렇게 해도 똑같은 칼럼을 뽑는데 아래는 벡터가 아니라 데이터프레임 형태로 (열 모양 유지하면서 뽑아줍니다)

df['number']

#subset 이번엔 조건을 달아서 데이타를 뽑아봅니다. 

subset(df, TF==TRUE) #TF열이 true일 때만 데이터 추출
subset(df, subset=TF==F) #subset 앞에 붙여도 상관 없구요. 
subset(df, TF==T, select=c('fruit')) #TF열이 true일 때 fruit 열만 뽑아내라.  

#order는 정열해서 볼 때 유용합니다. 이 내용들은 다 vector 형태로 저장

order(-df['number']) #number열 순서 바꿔서
order(-df$number) #같은 뜻 
order(df['number']) #이건 그냥 오름차순 순서로

#이걸 데이터로 아예 적용하려면

sorted<-order(-df['number'])
df<-df[sorted, ]

sorted_2<-order(-df$number)
df<-df[sorted_2, ]
반응형