當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R read.ftable 操作平麵列聯表


R語言 read.ftable 位於 stats 包(package)。

說明

讀取、寫入和強製‘flat’(應急)表,又名ftable

用法

read.ftable(file, sep = "", quote = "\"",
            row.var.names, col.vars, skip = 0)

write.ftable(x, file = "", quote = TRUE, append = FALSE,
             digits = getOption("digits"), sep = " ", ...)

## S3 method for class 'ftable'
format(x, quote = TRUE, digits = getOption("digits"),
       method = c("non.compact", "row.compact", "col.compact", "compact"),
       lsep = " | ",
       justify = c("left", "right"),
       ...)

## S3 method for class 'ftable'
print(x, digits = getOption("digits"), ...)

參數

file

命名文件的字符串或要從中讀取或寫入數據的connection""表示從控製台輸入進行讀取,輸出到控製台進行寫入。

sep

字段分隔符字符串。文件每一行上的值均以此字符串分隔。

quote

給出 read.ftable 的引用字符集的字符串;要完全禁用引用,請使用 quote="" 。對於 write.table ,指示數據中的字符串是否用雙引號引起來的邏輯。

row.var.names

帶有行變量名稱的字符向量,以防無法自動確定。

col.vars

給出列變量的名稱和級別的列表,以防無法自動確定。

skip

開始讀取數據之前要跳過的數據文件行數。

x

"ftable" 的對象。

append

合乎邏輯的。如果 TRUEfile 是文件名(而不是連接或 "|cmd" ),則 write.ftable 的輸出將附加到該文件。如果FALSEfile的內容將被覆蓋。

digits

一個整數,給出用於 x (的單元格條目)使用的有效位數。

method

指定如何格式化 "ftable" 對象的字符串(如果在 write.ftable()print 方法中使用,則打印)。可以縮寫。可用的方法有(參見示例):

"non.compact"

"ftable" 對象的默認表示形式。

"row.compact"

列標簽下方沒有空單元格的行緊湊版本。

"col.compact"

行標簽右側沒有空單元格的列緊湊版本。

"compact"

行和列緊湊版本。這可能意味著行和列標簽共享同一單元格。然後它們由字符串 lsep 分隔。

lsep

僅適用於 method = "compact" ,行和列標簽的分隔字符串。

justify

character 長度為(一或)二的向量,指定在 format(..) 中應如何進行字符串對齊,首先是標簽,然後是表條目。

...

傳入或傳出方法的更多參數;對於 write()print() ,特別是諸如 method 之類的參數,傳遞給 format()

細節

read.ftable 從文件中讀取扁平狀列聯表。如果文件包含平麵表的書麵表示(更準確地說,標題包含有關列變量的名稱和級別的所有信息,後跟一行包含行變量的名稱),則不需要其他參數。同樣,隻有一個列變量(其名稱是第一行中唯一條目)的平麵表會自動處理。其他變體可以通過使用 skip 跳過所有標題信息,並分別使用 row.var.namescol.vars 提供行變量的名稱以及列變量的名稱和級別來處理。請參閱下麵的示例。

請注意,平麵表的特點是行(也可能是列)標簽的 ‘ragged’ 顯示。如果給出了行變量級別的完整網格,則應使用 read.table 讀取數據,並使用 xtabs 從中創建列聯表。

write.ftable 將平麵表寫入文件,這對於生成列聯表的 ‘pretty’ ASCII 表示很有用。通過 method 參數可以使用不同的版本,例如,這對於構建 LaTeX 表可能很有用。

例子

## Agresti (1990), page 157, Table 5.8.
## Not in ftable standard format, but o.k.
file <- tempfile()
cat("             Intercourse\n",
    "Race  Gender     Yes  No\n",
    "White Male        43 134\n",
    "      Female      26 149\n",
    "Black Male        29  23\n",
    "      Female      22  36\n",
    file = file)
file.show(file)
ft1 <- read.ftable(file)
ft1
unlink(file)

## Agresti (1990), page 297, Table 8.16.
## Almost o.k., but misses the name of the row variable.
file <- tempfile()
cat("                      \"Tonsil Size\"\n",
    "            \"Not Enl.\" \"Enl.\" \"Greatly Enl.\"\n",
    "Noncarriers       497     560           269\n",
    "Carriers           19      29            24\n",
    file = file)
file.show(file)
ft <- read.ftable(file, skip = 2,
                  row.var.names = "Status",
                  col.vars = list("Tonsil Size" =
                      c("Not Enl.", "Enl.", "Greatly Enl.")))
ft
unlink(file)

ft22 <- ftable(Titanic, row.vars = 2:1, col.vars = 4:3)
write.ftable(ft22, quote = FALSE) # is the same as
print(ft22)#method="non.compact" is default
print(ft22, method="row.compact")
print(ft22, method="col.compact")
print(ft22, method="compact")

## using 'justify' and 'quote' :
format(ftable(wool + tension ~ breaks, warpbreaks),
       justify = "none", quote = FALSE)

參考

Agresti, A. (1990) Categorical data analysis. New York: Wiley.

也可以看看

ftable 了解有關平麵列聯表的更多信息。

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Manipulate Flat Contingency Tables。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。