0
내 dataframe은 다음과 같습니다 : 만 매년 내에서 도시로 도시 부의 상대에 따라 dataframe을 부분 집합하는 간단한 방법을 찾고 있어요하위 집합을 기반으로 그룹 내 분위수
df
city year wealth
a 2001 1
a 2002 30
b 2001 2
b 2002 20
c 2001 3
c 2002 10
. 그래서 나는이 같은 출력거야 :
top_third
city year wealth
a 2002 30
c 2001 3
mid_third
city year wealth
b 2001 2
b 2002 20
low_third
city year wealth
c 2002 10
a 2001 1
접근 방식을 나는이 같은 모습을 노력했습니다 :
top_third <- subset(df, wealth > quantile(wealth, 0.66, na.rm = TRUE))
non_rich <- subset(df, wealth <=quantile(wealth, 0.66, na.rm = TRUE))
mid_third <- subset(non_rich, wealth > quantile(wealth, 0.5, na.rm = TRUE))
low_third <- subset(non_rich, wealth <=quantile(wealth, 0.5, na.rm = TRUE))
나는이 방법으로 데 가장 큰 문제는 내가 할 수있는 것입니다 매년 범위 내에서 십자형 을 계산하는 방법을 찾지 못합니다. 누구든지이 작업을 수행 할 수있는 간단한 방법을 알고 있습니까?
당신이 무엇을 얻을이 도움을합니까 너는 원하는가? data.table 패키지 ('library (data.table)')를 사용하여'df'를 data.table ('setDT (df)')로 취급하십시오. 당신은'df [, rank : = rank (wealth)/length (wealth), by = "year"]'를 수행하여 부채 등급을 연도별로 정의합니다. 마지막으로 순위에 따라 결과를 분할합니다. 'split (df [,! "rank", with = F], df $ rank)' – jav