2017-04-25 83 views
0

我剛剛嘗試讀入用羽毛存儲到磁盤的R熊貓數據幀。在讀入數據幀後,我檢查了對象的類型,結果看到'data.frame',而我看到了'tbl_df' 'tbl' 'data.frame'。任何想法發生了什麼?將用羽毛存儲的熊貓數據幀讀入R

相關的代碼很簡單: contact_records_df <- read_feather('contact_records.feather') class(contact_records_df)

+0

包裝紙用'data.frame了'read_feather'調用(。)'似乎解決這個問題,但目前還不清楚對我來說爲什麼甚至是必要的。 – Chris

回答

1

它只是把它作爲一個tibble,這是或多或少的「增強」從tidyverse世界數據幀。您可以看到文檔here

您可以與數據框交換使用它們。我曾經注意到一段時間,特別是空間函數,蹣跚造成的東西死了,所以有時你必須將它們轉換回數據幀。

library(tibble) 

x1 <- c(1, 2, 3, 4) 
x2 <- c("one", "two", "three", "four") 

example_df <- data.frame(x1,x2) 
example_tibble <- tibble(x1,x2) 

如果你看看他們兩個人使用str,你會看到他們基本上除了tibbles同樣不會自動將字符串轉換爲因素(除其他事項外)。

> str(example_df) 
'data.frame': 4 obs. of 2 variables: 
$ x1: num 1 2 3 4 
$ x2: Factor w/ 4 levels "four","one","three",..: 2 4 3 1 
> str(example_tibble) 
Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 4 obs. of 2 variables: 
$ x1: num 1 2 3 4 
$ x2: chr "one" "two" "three" "four" 

此外,它仍然是一個數據幀,但是它有一些更具體的類

> is.data.frame(example_tibble) 
[1] TRUE