R數(shù)據(jù)框選中某列之后不降為成列表

1. 問(wèn)題

數(shù)據(jù)處理中一個(gè)令人頭疼的事情是選中數(shù)據(jù)框中的某列時(shí)經(jīng)常會(huì)被降維成列表而不是保持原來(lái)數(shù)據(jù)框的結(jié)構(gòu),如下:

student <- data.frame(ID=c(11,12,13),Name=c("Devin","Edward","Wenli"),Gender=c("M","M","F"))
student
數(shù)據(jù)框

當(dāng)我們想得到name這一行的時(shí)候會(huì)采用以下方法

name1 <- student$Name
name2 <- student[,2]
str(name1)
str(name2)
#Factor w/ 3 levels "Devin","Edward",..: 1 2 3
#Factor w/ 3 levels "Devin","Edward",..: 1 2 3

可以看到數(shù)據(jù)都是factor類型的,沒(méi)有保持為數(shù)據(jù)框,而這是不方面的

2. 解決

我們可以利用以下兩種方式避免這種情況的發(fā)生

name3 <- student[,2,drop = FALSE]
name4 <- student["Name"]
str(name3)
str(name4)
#'data.frame':  3 obs. of  1 variable:
#$ Name: Factor w/ 3 levels "Devin","Edward",..: 1 2 3
#'data.frame':  3 obs. of  1 variable:
#$ Name: Factor w/ 3 levels "Devin","Edward",..: 1 2 3

其中注意雙中括號(hào)和單雙括號(hào)的區(qū)別

name5 <- student[["Name"]]
str(name5)
#Factor w/ 3 levels "Devin","Edward",..: 1 2 3

雙中括號(hào)類似于$功能了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 學(xué)習(xí)目標(biāo) 演示如何從現(xiàn)有的數(shù)據(jù)結(jié)構(gòu)中取子集,合并及創(chuàng)建新數(shù)據(jù)集。 導(dǎo)出數(shù)據(jù)表和圖以供在R環(huán)境以外使用。 1.數(shù)據(jù)框...
    小潔忘了怎么分身閱讀 4,657評(píng)論 1 10
  • 1、窗體 1、常用屬性 (1)Name屬性:用來(lái)獲取或設(shè)置窗體的名稱,在應(yīng)用程序中可通過(guò)Name屬性來(lái)引用窗體。 ...
    Moment__格調(diào)閱讀 4,782評(píng)論 0 11
  • 夕陽(yáng)薄薄地撒在弄堂里,暮靄淺淺地掛在老樹(shù)上,這是我的黃昏景色。曾想把那樣的黃昏鐫刻在記憶的石碑,讓后來(lái)的日...
    冰夫閱讀 211評(píng)論 0 0
  • 本回答以針對(duì)商業(yè)類工作的學(xué)生簡(jiǎn)歷為基礎(chǔ),其它簡(jiǎn)歷或有不同。 本回答純屬個(gè)人意見(jiàn),好簡(jiǎn)歷有千萬(wàn)種。 --------...
    夏目有梨閱讀 933評(píng)論 0 4
  • 有一種性取向叫做lithromantic,中文名:性單戀。說(shuō)的是這種人在對(duì)某個(gè)人產(chǎn)生好感后,當(dāng)對(duì)方對(duì)他有了同樣感情...
    涵丹尼閱讀 2,261評(píng)論 2 2

友情鏈接更多精彩內(nèi)容