我有select
incidentnumber,
decode(ToiletteType, 'A', 'Automatic Standard', 'P', 'Portable Potty', ToiletteType),
toiletdangers,
incidentdate
from
core.lostlawsuits;
有4列不同行数。我用以下文件阅读了文件:
data.frame
我想从每个包含相同值的列中减去行。我的df的colnames是:
df <- as.data.frame(read.table("Drug_Gene.txt", sep="\t", fill=TRUE, header=TRUE))
首先我尝试了:
> colnames(df)
[1] "SOX2" "EGR1" "FOS" "RUNX2"
但我收到了以下错误:
first_two <- df[df$SOX2==df$EGR1, ] # Return those rows which have identical values in theses columns
我认为问题在于不同程度:
Error in Ops.factor(df$SOX2, df$EGR1) : level sets of factors are different
任何人都可以告诉我如何解决这个问题..?谢谢。 为了再现目的,我还提供了一个输入样本:
> str(df)
'data.frame': 329 obs. of 4 variables:
$ SOX2 : Factor w/ 23 levels "","4-acetylantroquinonol B",..: 2 3 10 4 5 6 14 7 8 9 ...
$ EGR1 : Factor w/ 127 levels "","(+)-JQ1 compound",..: 5 4 8 6 6 6 6 10 7 11 ...
$ FOS : Factor w/ 223 levels "(+)-JQ1 compound",..: 5 6 7 7 7 7 7 7 7 7 ...
$ RUNX2: Factor w/ 21 levels "","(+)-JQ1 compound",..: 3 3 5 6 7 4 11 11 8 9 ...
所以从这样的输入文件我希望得到以下输出:
SOX2 EGR1 FOS RUNX2
abc def ghi jkl
abc jkl abc def
jkl abc def abc
lmn jkl lmn
因为只有这些是每列中出现的值。
SOX2 EGR1 FOS RUNX2
abc abc abc abc
jkl jkl jkl jkl