R語言進行製表

來源:互聯網
上載者:User

標籤:abs   提取   函數   nbsp   多個   比較   使用   方法   選擇   

可以使用table()函數建立、修改、編輯表格對象,還可以以此函數建立更複雜的列聯表。

一、製作列聯表
1.對向量建立列聯表
對於向量data=3 5 7 5 3 2 6 8 5 6 9 4 5 7 3 4,建立的列聯表形式如下
> table(data)
data
2 3 4 5 6 7 8 9
1 3 2 4 2 2 1 1
第一行為向量中出現的數字,第二行為數位頻數

如果是字元向量也是一樣的,如:
data2="mow"   "mow"   "mow"   "mow"   "mow"   "unmow" "unmow" "unmow" "unmow"
> table(data2)
data2
  mow unmow
    5     4
2.對資料框建立列聯表

如果對資料框直接使用table()函數,得到的列聯表通常比較複雜,當資料框的資料都是數值時,情況會更複雜,甚至會分裂為多個表格。

我們可以通過選擇列,從資料框中提取想要的列,進而組成列聯表,這需要使用$符號進行選擇,並使用dnn=進行行列命名

如果要在資料框中提取想要的行,首先要將資料框轉換成矩陣,再進行提取,轉換的方法有使用as.matrix()或者使用轉置函數t()。

3.對矩陣建立列聯表

可以直接使用table()函數對矩陣,但是得到的結果和對向量使用一樣,只是每個數位頻數列表,矩陣不能使用$符號,但是可以使用[]選擇行或列。

二、建立複雜的列聯表

table()函數可以設定條件以製作不同的列聯表,但是這樣的話,結果會被分為若干個表格,如果使用ftable(),則可以避免此類情況,使用ftable()得到的結果資料類型為ftable()。

ftable()除了可以使用$符合進行選擇變數之外,還有一個通用格式為:
ftable(column~row1+row2+...,data)
~符號用來建立一個公式,左側為列變數、右側為行變數,多個行或列變數可以通過+組合。


三、在列聯表的基礎上再製表
如果面對一個已經是列聯表的對象,只是希望將其重新組合,那麼需要使用xtabs()函數,
格式為:xtabs(freq~cateories11+cateories2+...,data)
~左側為頻數,右側為分類,預設第一個變數為行分類、第二個變數為列分類



R語言進行製表

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.