저는 R이 매우 새롭기 때문에 원하는 데이터 조작 방법을 알려주고 싶습니다.R : 데이터 세트를 사 분위수/십진수로 나눕니다. 올바른 방법은 무엇입니까?
나는 3 개의 변수가있는 데이터 배열을 가지고 있습니다.
gene_id fpkm meth_val
1 100629094 0.000 0.0063
2 100628995 0.000 0.0000
3 102655614 111.406 0.0021
fpkm를 기준으로 내 gene_ids를 4 분위수 또는 십진수로 계층화 한 후 평균 meth_val을 플로팅하고 싶습니다.
나는 dataframe에 내 데이터를로드하면 ...
data <- read.delim("myfile.tsv", sep='\t')
나는 fpkm를 확인할 수 있습니다 사용하여 분위 :
거기에서 0% 10% 20% 30% 40% 50%
0.000000e+00 9.783032e-01 7.566164e+00 3.667630e+01 1.379986e+02 3.076280e+02
60% 70% 80% 90% 100%
5.470552e+02 8.875592e+02 1.486200e+03 2.974264e+03 1.958740e+05
를 산출
quantile(data$fpkm, prob = seq(0, 1, length = 11), type = 5
하는 I fpkm_val이 이러한 십진수 중 하나에 들어 맞는지에 따라 본질적으로 데이터 프레임을 10 개의 그룹으로 나누고 싶습니다. 그런 다음 ggplot에있는 각 십 분위수의 meth_val을 상자 플롯으로 플롯하고 십진법에 걸쳐 통계 테스트를 수행하고 싶습니다.
내가 정말로 고집하는 주요한 점은 적절한 방식으로 데이터 세트를 분할하는 방법입니다. 어떤 도움이라도 대단히 감사하겠습니다!
감사합니다.
R에서 cut 함수를 사용하여 나누기 인수를 quantiles로 설정하십시오. 유사한 Q & A가 있습니다. http://stackoverflow.com/questions/11728419/using-cut-and-quartile-to-generate-breaks-in-r-function – technOslerphile