저는 R에 익숙하지 않고 독자적으로 배우려고합니다. 나는 1,048,575 개의 행과 73 개의 열을 가진 csv 형식의 데이터를 가지고있다. 나는 세 개의 칼럼, 즉 year, country, aid_amount를보고있다. 나는 i) 년 동안, 그리고 ii) 1991 년에서 2010 년 동안 국가 별 aid_amount의 합계를 얻고 싶다. 나는 모든 년간 얻으려고 다음과 같은 노력했지만 내가 얻을 결과 Excel에서 정렬/합계 때 다릅니다. 여기서 뭐가 잘못 됐어. 또한, ii) 1991 년에서 2010 년까지 어떤 변화를 만들어야합니다. 감사.R - 다른 열의 범주를 기반으로 한 열의 합계를 얻습니다.
aiddata <- read.csv("aiddata_research.csv")
sum_by_country <- tapply(aiddata$aid_amount, aiddata$country, sum, na.rm=TRUE) # There are missing data on aid_amount
write.csv(sum_by_country, "sum_by_country.csv")
가 나는 또한 시도 : 몇 열에 대한
sum_by_country <- aggregate(aid_amount ~ country, data = aiddata, sum) instead of tapply.
처음 몇 행은 다음과 같이 : 당신은 큰 데이터 세트에 대한 data.table
을 사용할 수
aiddata_id year country aid_amount
23229017 2004 Bangladesh 685899.2666
14582630 2000 Bilateral, unspecified 15772.77174
28085216 2006 Bilateral, unspecified 38926.82898
28702455 2006 Bilateral, unspecified 12633.85659
29928104 2006 Cambodia 955412.9884
27783934 2006 Cambodia 11773.77268
37418683 2008 Guatemala 40150.7331
94726192 2010 Guatemala 151206.3096
에 대한
aid_amount
의 합계를 얻기 위해year
각
country
에 대한aid_amount
의 합을 얻고 싶은 경우에 대한 그룹화 변수로 두 번째 질문. 'year '를 포함하는 몇 개의 칼럼을 사용하여 몇 줄의 데이터를 보여줄 수 있습니까? 코드와 관련해서는 첫 번째 부분에서는 괜찮아 보입니다. 재현 가능한 예제를 포함 시키면 훌륭합니다. – akrun@Akrun이 말했듯이 코드는 괜찮아 보입니다. 데이터도 괜찮은 것처럼 보입니까? 이것은 "재현 가능한 예"의 일부가 가장 가치있게 될 때입니다 ... – PavoDive
감사합니다 @akrun 및 PavoDive. 위의 데이터 행을 몇 개 추가했습니다. 원본 데이터 세트는 http://aiddata.org/aiddata-research-releases에서 다운로드 할 수 있습니다. 첫 번째 글 머리 기호입니다. • AidData 2.1 "Full"버전 – SiriN