SEER 데이터베이스에서 데이터를 다운로드 한 후 일부 사람들은 데이터가 정리 및 분류되지 않았고, 당사의 통계 소프트웨어가 인식하는 형태로 변환 할 수없고 분석 할 수 없기 때문입니다. 오늘은 데이터를 사용할 수 있도록 R 언어를 사용하여 seed 데이터베이스를 정리하는 방법을 알려 드리겠습니다.
먼저, 먼저 다운로드해야하는 foreign, car 및 stringr가 필요한 R 패키지를 가져옵니다.
그런 다음 다운로드 한 데이터를 R로 가져 왔습니다. 20 만 개 이상의 데이터가있어 수동으로 수정할 수 없습니다.
be<-read.csv("E:/r/test/seer4.csv",sep=',',header=TRUE)
데이터의 이름과 형식을보고 변수
head (be)
names (be)
가 너무 지저분하게 느껴지고 일부 이름은 매우 길며 이름을 모두 변경합니다.
colnames(be)<-c("sex","time","rezult","rezult1","status","race","Subtype","nodes","Lymph.Invasion",
"tumor.size","extension","lymph.nodes","age","ajcc")#数据太长,重新命名
데이터 세트를 다시 확인해 보겠습니다. 이번에는 훨씬 더 상쾌합니다.
총 14 개의 변수가있는 것을 발견했습니다 . 그중 Lymph.Invasion은 데이터가 누락되어 전혀 분석 할 수없고 삭제 만 가능합니다. 공용 데이터베이스.
be<-be[,-9]#删掉第9列Lymph.Invasion,因为都是缺失的数据
데이터의 많은 변수가 요구 사항을 충족하지 않는 문자열이므로 숫자로 변환해야합니다.
be$sex<-ifelse(be$sex=="Female",1,ifelse(be$sex=="Male",2,NA))#性别转换成1和2,缺失的使用NA表示,其他的相同
be$rezult1 <-ifelse(be$rezult1 =="Alive or dead due to cancer",1,
ifelse(be$rezult1 =="Dead (attributable to causes other than this cancer dx)",
2,NA))
be$status<-ifelse(be$status=="Alive",0,ifelse(be$status=="Dead",1,NA))
be$race<-ifelse(be$race=="White",1,ifelse(be$race=="Black",2,3))
be$Subtype<-recode(be$Subtype,"'HR-/HER2- (Triple Negative)'=1;
'HR-/HER2+ (HER2 enriched)'=2;'HR+/HER2- (Luminal A)'=3;
'HR+/HER2+ (Luminal B)'=4;else=NA")#这里是4个分类变量,使用ifelse函数套叠胎麻烦,改用car函数
be$nodes[be$nodes=="Blank(s)"]=NA#让数据中的Blank(s)变为缺失值,下面同理
be$tumor.size[be$tumor.size=="Blank(s)"]=NA
be$extension[be$extension=="Blank(s)"]=NA
be$lymph.nodes[be$lymph.nodes=="Blank(s)"]=NA
be$age<-str_extract(be$age, "\\d+")#把年龄里面的数字提取出来
be$ajcc[be$ajcc=="Blank(s)"]=NA
좋습니다. 변환이 거의 완료되었습니다. 살펴 보겠습니다. Rezult는 쓸모가 없습니다. 그를 무시하고 나중에 삭제합니다. 필요한 것은 rezult1.
Ajcc입니다. 아직 사용할 필요가 없기 때문에 변환하지 않았습니다. 상호 작용 효과 탐색에 대해 이야기 할 때 분석하는 동안 얘기합시다. 이제 먼저 그를 무시하십시오. 강박 장애가있는 경우 위의 코드에 따라 변환 할 수도 있습니다.
이제 완료 되었습니까? 아니요, 아직 생성되지 않은 또 다른 중요한 변수는 경쟁 위험의 결과입니다.
지금 생성 해 보겠습니다.
be$status1<-ifelse(be$status==0,0,ifelse(be$rezult1==1,1,2))
마지막으로 데이터가 나오면
1.csv로 출력합니다.
write.csv(be,file = "1.csv")
마지막으로 1.csv를 열고 정렬합니다. 이것이 우리가 게시하려는
데이터입니다. 20 만 개 이상의 데이터입니다. 중국어 코어 또는 낮은 점수의 SCI를 보내는 것은 게임처럼 쉽지 않습니다.
데이터 마이닝 과정에 대해 더 알고 싶으 시다면 저의 과학적 연구 튜토리얼을 참고 해주세요.
더 흥미 진진한 기사를 원하시면 공개 계정에 주목 해주세요 : 제로 기반 연구