索引值在 r 中不匹配
index value doesn't match in r
我在做任何更改之前总结了 table。然后我提取排除空值和 "I or II NOS" 的数据并分别分配给 a1 和 a2 的数据。
a1 有正确的数据。但是显示a2还有4条"I or II NOS"条数据。当我尝试索引原始 table 的 "I or II NOS" 数据时,它给出了 10 行,但 4 行的值不是 "I or II NOS"。这是怎么发生的?有人可以帮我吗?我没有足够的声誉来粘贴结果屏幕打印图片,所以我只粘贴代码。提前致谢。
a1 = a[AJCC_PATHOLOGIC_TUMOR_STAGE!='',]
a2 = a1[AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
抱歉,我更新了问题并粘贴了全部代码。
library("cgdsr", lib.loc="~/R/win-library/3.1")
library("R.oo", lib.loc="~/R/win-library/3.1")
library("R.methodsS3", lib.loc="~/R/win-library/3.1")
# Create CGDS object
mycgds = CGDS("http://www.cbioportal.org/public-portal/")
test(mycgds)
# Get list of cancer studies at server
getCancerStudies(mycgds)[, c(1,2)]
mycancerstudy = getCancerStudies(mycgds)[78,1]
# Get available case lists (collection of samples) for a given cancer study
getCaseLists(mycgds,mycancerstudy)[,1]
mycaselist = getCaseLists(mycgds,mycancerstudy)[2,1]
# Get available genetic profiles
getGeneticProfiles(mycgds,mycancerstudy)[,1]
mygeneticprofile = getGeneticProfiles(mycgds,mycancerstudy)[2,1]
# Get clinical data for the case list
myclinicaldata = getClinicalData(mycgds,mycaselist)
# skcm_tcga_rna_seq_v2_mrna_median_Zscores
z_score_caselist = getCaseLists(mycgds,mycancerstudy)[7,1]
# Get data slices for a specified list of genes, genetic profile and case list
WNT5A = getProfileData(mycgds,c('WNT5A'),mygeneticprofile,mycaselist)
# documentation
help('cgdsr')
help('CGDS')
WNT5A_stage = merge(WNT5A,myclinicaldata, by = 'row.names')
WNT5A_stage_table = WNT5A_stage[, c(2, 6)]
a = na.omit(WNT5A_stage_table)
a1 = a[a$AJCC_PATHOLOGIC_TUMOR_STAGE!='']
a2 = a1[AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
只更新部分结果如下。可以看到这个值和索引不一样。
>a1[AJCC_PATHOLOGIC_TUMOR_STAGE=='I or II NOS',]
WNT5A AJCC_PATHOLOGIC_TUMOR_STAGE
8 712.1645 I or II NOS
28 7.5434 I or II NOS
33 3.6290 I or II NOS
34 8.7881 I or II NOS
38 150.3167 I or II NOS
47 34.3643 I or II NOS
180 19.1529 Stage IB
304 20.1072 Stage IIC
324 44.0167 Stage IB
337 19142.6676 Stage IIIC
如我的评论所述,您没有使用新数据框中的列进行子设置。您需要:
a2 = a1[a1$AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
或
a2 = subset(a1, AJCC_PATHOLOGIC_TUMOR_STAGE != 'I or II NOS')
我在做任何更改之前总结了 table。然后我提取排除空值和 "I or II NOS" 的数据并分别分配给 a1 和 a2 的数据。 a1 有正确的数据。但是显示a2还有4条"I or II NOS"条数据。当我尝试索引原始 table 的 "I or II NOS" 数据时,它给出了 10 行,但 4 行的值不是 "I or II NOS"。这是怎么发生的?有人可以帮我吗?我没有足够的声誉来粘贴结果屏幕打印图片,所以我只粘贴代码。提前致谢。
a1 = a[AJCC_PATHOLOGIC_TUMOR_STAGE!='',]
a2 = a1[AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
抱歉,我更新了问题并粘贴了全部代码。
library("cgdsr", lib.loc="~/R/win-library/3.1")
library("R.oo", lib.loc="~/R/win-library/3.1")
library("R.methodsS3", lib.loc="~/R/win-library/3.1")
# Create CGDS object
mycgds = CGDS("http://www.cbioportal.org/public-portal/")
test(mycgds)
# Get list of cancer studies at server
getCancerStudies(mycgds)[, c(1,2)]
mycancerstudy = getCancerStudies(mycgds)[78,1]
# Get available case lists (collection of samples) for a given cancer study
getCaseLists(mycgds,mycancerstudy)[,1]
mycaselist = getCaseLists(mycgds,mycancerstudy)[2,1]
# Get available genetic profiles
getGeneticProfiles(mycgds,mycancerstudy)[,1]
mygeneticprofile = getGeneticProfiles(mycgds,mycancerstudy)[2,1]
# Get clinical data for the case list
myclinicaldata = getClinicalData(mycgds,mycaselist)
# skcm_tcga_rna_seq_v2_mrna_median_Zscores
z_score_caselist = getCaseLists(mycgds,mycancerstudy)[7,1]
# Get data slices for a specified list of genes, genetic profile and case list
WNT5A = getProfileData(mycgds,c('WNT5A'),mygeneticprofile,mycaselist)
# documentation
help('cgdsr')
help('CGDS')
WNT5A_stage = merge(WNT5A,myclinicaldata, by = 'row.names')
WNT5A_stage_table = WNT5A_stage[, c(2, 6)]
a = na.omit(WNT5A_stage_table)
a1 = a[a$AJCC_PATHOLOGIC_TUMOR_STAGE!='']
a2 = a1[AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
只更新部分结果如下。可以看到这个值和索引不一样。
>a1[AJCC_PATHOLOGIC_TUMOR_STAGE=='I or II NOS',]
WNT5A AJCC_PATHOLOGIC_TUMOR_STAGE
8 712.1645 I or II NOS
28 7.5434 I or II NOS
33 3.6290 I or II NOS
34 8.7881 I or II NOS
38 150.3167 I or II NOS
47 34.3643 I or II NOS
180 19.1529 Stage IB
304 20.1072 Stage IIC
324 44.0167 Stage IB
337 19142.6676 Stage IIIC
如我的评论所述,您没有使用新数据框中的列进行子设置。您需要:
a2 = a1[a1$AJCC_PATHOLOGIC_TUMOR_STAGE!='I or II NOS',]
或
a2 = subset(a1, AJCC_PATHOLOGIC_TUMOR_STAGE != 'I or II NOS')