3
請看下面的兩個代碼,myup1保留行名稱,myup2不會。使用%>篩選數據框時維護rownames%
myup1<-outdf2[outdf2$label == "Up-Regulated", ]
myup2<-outdf2 %>%filter(label == "Up-Regulated")
有沒有一種方法來報告rownames
與%>%
方法?
請看下面的兩個代碼,myup1保留行名稱,myup2不會。使用%>篩選數據框時維護rownames%
myup1<-outdf2[outdf2$label == "Up-Regulated", ]
myup2<-outdf2 %>%filter(label == "Up-Regulated")
有沒有一種方法來報告rownames
與%>%
方法?
要舉一個例子來擴充我的評論,我們可以使用add_rownames
,但它已被棄用,所以請改用tibble::rownames_to_column()
。
library(dplyr)
library(tibble)
df1 <- mtcars[1:5, 1:3]
df1
# mpg cyl disp
# Mazda RX4 21.0 6 160
# Mazda RX4 Wag 21.0 6 160
# Datsun 710 22.8 4 108
# Hornet 4 Drive 21.4 6 258
# Hornet Sportabout 18.7 8 3
df1[ df1$cyl == 6, ]
# mpg cyl disp
# Mazda RX4 21.0 6 160
# Mazda RX4 Wag 21.0 6 160
# Hornet 4 Drive 21.4 6 258
df1 %>%
rownames_to_column("myCars") %>%
filter(cyl == 6)
# # A tibble: 3 x 4
# myCars mpg cyl disp
# <chr> <dbl> <dbl> <dbl>
# 1 Mazda RX4 21.0 6 160
# 2 Mazda RX4 Wag 21.0 6 160
# 3 Hornet 4 Drive 21.4 6 258
dplyr不喜歡* rownames,請參閱add_rownames()在過濾之前將rownames添加爲列。 – zx8754