R语言 如何把一个大的数据框架分割成小的数据框架

R语言 如何把一个大的数据框架分割成小的数据框架

在这篇文章中,我们将学习如何在R编程语言中把非常大的数据框架分割并写成片状。

简介

我们知道,我们必须处理大的数据框架,这不是一件容易的事情,所以为了处理这样的大数据框架,将大数据框架分割成许多小的数据框架是非常有帮助的。我们经常使用分割函数来完成这一任务。要分割非常大的数据帧,有很多步骤,让我们来看看。

分步实现

第1步: 让我们取一个数据帧,在这个数据帧上我们要应用分割操作,将其分割成小块。

 P       Q       R
SP1   2012-01   123
SP2   2022-01   143
SP3   2022-01   342
SP1   2022-02   542
SP2   2022-02   876
SP3   2022-02   982
SP1   2022-03   884
SP2   2022-03   936
SP3   2022-03   987

第2步: 现在,在这一步中,我们需要将数据以表格的形式返回,为此,我们将使用 read. table()函数。read.table()函数用于从一个文本文件中读取数据,然后以表格的形式返回数据。这个函数支持各种参数,如文本文件、标题等。

语法: read.table(filename, header = FALSE, sep = “”)

参数

header: 表示文件是否包含头行。
sep: 表示文件中使用的分隔符值

# Reading data in the form
# of table
df <-read.table(text=
          "P      Q      R
         SP1   2012-01   123
         SP2   2022-01   143
         SP3   2022-01   342
         SP1   2022-02   542
         SP2   2022-02   876
         SP3   2022-02   982
         SP1   2022-03   884
         SP2   2022-03   936
         SP3   2022-03   987",
                header = TRUE)
  
# Printing original data frame
print(df)

输出

    P       Q   R
1 SP1 2012-01 123
2 SP2 2022-01 143
3 SP3 2022-01 342
4 SP1 2022-02 542
5 SP2 2022-02 876
6 SP3 2022-02 982
7 SP1 2022-03 884
8 SP2 2022-03 936
9 SP3 2022-03 987

第3步: 在这一步中,我们将把数据框分成更小的数据框,为此,我们必须使用split()函数。它是一个内置的R函数,可以根据函数的参数将向量或数据帧分割成更小的组。

语法: split(x, f, drop = FALSE)

参数

x: 代表数据向量或数据框
f: 代表分割数据的因素
drop: 代表逻辑值,表示是否应该放弃没有出现的层次

我们需要使用任何一列的内容创建一些新的数据框,即Q和P。我们将使用Q列的内容,之后也要为数据框命名;下面是代码和截图,提到如何使用split函数创建一个新的数据框,为它命名并打印新的数据框,下面使用df1作为新数据框的名称。

df1 = split(df,df$Q)
  
# Printing splitted data frame
print(df1)

输出

$`2012-01`
    P       Q   R
1 SP1 2012-01 123

$`2022-01`
    P       Q   R
2 SP2 2022-01 143
3 SP3 2022-01 342

$`2022-02`
    P       Q   R
4 SP1 2022-02 542
5 SP2 2022-02 876
6 SP3 2022-02 982

$`2022-03`
    P       Q   R
7 SP1 2022-03 884
8 SP2 2022-03 936
9 SP3 2022-03 987

第4步: 在这一步,我们将使用P列的内容创建一个新的数据框,并将其命名为df2。下面的代码和截图是指如何使用split()函数创建一个新的数据框,为其命名并打印新的数据框,下面用df2作为新数据框的名称。

df2 = split(df,df$P)
  
# Printing splitted data frame
print(df2)
$SP1
    P       Q   R
1 SP1 2012-01 123
4 SP1 2022-02 542
7 SP1 2022-03 884

$SP2
    P       Q   R
2 SP2 2022-01 143
5 SP2 2022-02 876
8 SP2 2022-03 936

$SP3
    P       Q   R
3 SP3 2022-01 342
6 SP3 2022-02 982
9 SP3 2022-03 987

我们可以从输出中看到,SP1、SP2和SP3是分开的,这就是我们如何将大的数据帧分成小的数据帧。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程