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是分开的,这就是我们如何将大的数据帧分成小的数据帧。