1
질문에 대한 예제 df를 Buidling하면 두 번째 질문이 나타납니다. 첫 번째 질문 2 :필터링 df columns, systemIds + chararacter + numeric, sapply, grepl 결과 필터링
Q2 : 혼합 데이터 유형의 df를 생성하는 데 더 효율적인 방법이 있습니까? 여기 내 시도 :
a<-seq(2218,2221,1)
b<-rep(58,4)
s<-rep(22,4)
d<-sample((100:220),4)
e<-letters[seq(1:4)]
f<-gl(4,1,labels="F")
g<-factor(rep("INSTRUMENT NOT CALIBRATED",4))
i<-factor(rep("org/initials",4))
t<-data.frame(a,b,s,d,e,f,g,i)
colnames(t)<-c("bSystemId","cSystemId","lengthdecimal","heightquantity","desc","code","notes","createdBy"); head(t)
sapply(t,class)
Q1 :
:이 두 문장의 결과는 나에게 내가 원하는 결과를 얻을 : 나는 데이터 프레임 필드를 필터링하지만, 부분적으로 필터 문을 결합하고있어는 필터링을 반전
a<-head(t[sapply(t,is.numeric)]);a
b<-a[,!grepl("SystemId",names(a))];b
동일한 결과를 산출하기 위해 이러한 진술을 결합 할 수 있습니까? 나는 몇 가지를 시도했지만 그들 중 누구도 일하지 않습니다. 예 :
head(t[,!grepl("SystemId",names(t[sapply(t,is.numeric)]))])
의견을 보내 주셔서 감사합니다.
답장을 보내 주셔서 감사합니다. 나는 50 개 이상의 필드가있는 테이블을 사용하여 코드 개선을 항상 찾고 있습니다. – user2009447
@ user2009447 또한 다른 열이있는 데이터 프레임을 만드는 업데이트 된 방법을 참고하십시오. – BrodieG
깔끔합니다. 적용 기능을 많이 사용할수록 더 좋아합니다. – user2009447