在R中选择data.frame的前4行

Moe*_*Moe 97 r dataframe

如何选择a的前4行data.frame:

              Weight Response
1   Control     59      0.0
2 Treatment     90      0.8
3 Treatment     47      0.1
4 Treamment    106      0.1
5   Control     85      0.7
6 Treatment     73      0.6
7   Control     61      0.2
Run Code Online (Sandbox Code Playgroud)

Edu*_*oni 139

用途head:

dnow <- data.frame(x=rnorm(100), y=runif(100))
head(dnow,4) ## default is 6
Run Code Online (Sandbox Code Playgroud)


Sha*_*ane 118

使用索引:

df[1:4,]
Run Code Online (Sandbox Code Playgroud)

括号中的值可以解释为逻辑,数字或字符(匹配相应的名称):

df[row.index, column.index]
Run Code Online (Sandbox Code Playgroud)

阅读帮助(`[`)以获取有关此主题的更多详细信息,并阅读R简介中的索引矩阵.

  • 如果您只需要一列中的前四行,这也可以使用.获得前四个响应值:`df [1:4,"Response"]`. (4认同)

Gia*_*omo 14

如果有人对dplyr解决方案感兴趣,那么它非常直观:

dt <- dt %>%
  slice(1:4)
Run Code Online (Sandbox Code Playgroud)


Des*_*gos 10

如果您的行少于4行,则可以使用head函数(head(data, 4)head(data, n=4)),它就像魅力一样.但是,假设我们有以下15行的数据集

>data <- data <- read.csv("./data.csv", sep = ";", header=TRUE)

>data
 LungCap Age Height Smoke Gender Caesarean
1    6.475   6   62.1    no   male        no
2   10.125  18   74.7   yes female        no
3    9.550  16   69.7    no female       yes
4   11.125  14   71.0    no   male        no
5    4.800   5   56.9    no   male        no
6    6.225  11   58.7    no female        no
7    4.950   8   63.3    no   male       yes
8    7.325  11   70.4    no  male         no
9    8.875  15   70.5    no   male        no
10   6.800  11   59.2    no   male        no
11   6.900  12   59.3    no   male        no
12   6.100  13   59.4    no   male        no
13   6.110  14   59.5    no   male        no
14   6.120  15   59.6    no   male        no
15   6.130  16   59.7    no   male        no
Run Code Online (Sandbox Code Playgroud)

比方说,你想选择前10行.最简单的方法是data[1:10, ].

> data[1:10,]
   LungCap Age Height Smoke Gender Caesarean
1    6.475   6   62.1    no   male        no
2   10.125  18   74.7   yes female        no
3    9.550  16   69.7    no female       yes
4   11.125  14   71.0    no   male        no
5    4.800   5   56.9    no   male        no
6    6.225  11   58.7    no female        no
7    4.950   8   63.3    no   male       yes
8    7.325  11   70.4    no  male         no
9    8.875  15   70.5    no   male        no
10   6.800  11   59.2    no   male        no
Run Code Online (Sandbox Code Playgroud)

但是,假设您尝试检索前19行并查看会发生什么 - 您将缺少值

> data[1:19,]
     LungCap Age Height Smoke Gender Caesarean
1      6.475   6   62.1    no   male        no
2     10.125  18   74.7   yes female        no
3      9.550  16   69.7    no female       yes
4     11.125  14   71.0    no   male        no
5      4.800   5   56.9    no   male        no
6      6.225  11   58.7    no female        no
7      4.950   8   63.3    no   male       yes
8      7.325  11   70.4    no  male         no
9      8.875  15   70.5    no   male        no
10     6.800  11   59.2    no   male        no
11     6.900  12   59.3    no   male        no
12     6.100  13   59.4    no   male        no
13     6.110  14   59.5    no   male        no
14     6.120  15   59.6    no   male        no
15     6.130  16   59.7    no   male        no
NA        NA  NA     NA  <NA>   <NA>      <NA>
NA.1      NA  NA     NA  <NA>   <NA>      <NA>
NA.2      NA  NA     NA  <NA>   <NA>      <NA>
NA.3      NA  NA     NA  <NA>   <NA>      <NA>
Run Code Online (Sandbox Code Playgroud)

并使用head()函数,

> head(data, 19) # or head(data, n=19)
   LungCap Age Height Smoke Gender Caesarean
1    6.475   6   62.1    no   male        no
2   10.125  18   74.7   yes female        no
3    9.550  16   69.7    no female       yes
4   11.125  14   71.0    no   male        no
5    4.800   5   56.9    no   male        no
6    6.225  11   58.7    no female        no
7    4.950   8   63.3    no   male       yes
8    7.325  11   70.4    no  male         no
9    8.875  15   70.5    no   male        no
10   6.800  11   59.2    no   male        no
11   6.900  12   59.3    no   male        no
12   6.100  13   59.4    no   male        no
13   6.110  14   59.5    no   male        no
14   6.120  15   59.6    no   male        no
15   6.130  16   59.7    no   male        no
Run Code Online (Sandbox Code Playgroud)

希望这有帮助!


Ole*_*sen 9

对于DataFrame,可以简单地输入

head(data, num=10L)
Run Code Online (Sandbox Code Playgroud)

以前10个为例.

对于data.frame,可以简单地输入

head(data, 10)
Run Code Online (Sandbox Code Playgroud)

获得前10名.

  • 这个答案与 5 年前在此答案之前发布的已接受答案有何不同?/sf/answers/186749041/ 它添加任何新信息吗? (3认同)