R语言 如何随机洗刷R数据框架中的单列内容
在这篇文章中,我们将学习如何使用R编程语言随机洗刷单列的内容。
使用中的数据框架样本
c1 | c2 | c3 |
---|---|---|
a1 | w1 | 1a |
b2 | x2 | 2b |
c3 | y3 | 3c |
d4 | z4 | 4d |
方法1:使用 sample()
在这个方法中,我们使用了转化函数来修改我们的数据框架,然后我们传递了我们想要修改的列名,然后我们提供了我们想要修改数据框架列的函数。
在给定的例子中,我们在 sample() 函数中传递了数据框架的c2列,该函数对c2列进行了洗牌,然后我们将其重新分配到c2列,方法是: c2=sample(c2)
语法: transform( df, column_name = sample(column_name))
参数
df: 数据框架对象
column_name: 要被洗牌的列
sample(): 洗涤数据框架中的列
transform() 函数用于修改数据。它将第一个参数转换为数据框架。这个函数用于快速而简单地转换/修改数据框架。
例子: R程序对一列内容进行随机洗牌
df <- data.frame(c1=c(“a1”, “b2”, “c3”, “d4”), c2=c(“w1”, “x2”, “y3”, “z4”), c3=c(“1a”, “2b”, “3c”, “4d”) df_shuffled=transform( df, c2 = sample(c2)) df_shuffled
输出
c1 c2 c3
1 a1 y3 1a
2 b2 w1 2b
3 c3 x2 3c
4 d4 z4 4d
方法2:不使用transform()
为了创建一个新的数据框架,旧数据框架的列在这里被传递。在这个过程中,我们在c3列上使用了sample()函数,由于这个原因,新创建的数据框架对c3列的值进行了洗牌。这个过程可用于随机洗刷数据框架的多个列。
语法
data.frame(c1=dfc1, c2=dfc2, c3=sample(df$c2))
例子: R程序来随机洗刷一列的内容
df <- data.frame(c1=c(“a1”, “b2”, “c3”, “d4”), c2=c(“w1”, “x2”, “y3”, “z4”), c3=c(“1a”, “2b”, “3c”, “4d)) df_shuffled=data.frame(c1=dfc1, c2=dfc2, c3=sample(df$c2)) df_shuffled
输出
c1 c2 c3
1 a1 w1 w1
2 b2 x2 y3
3 c3 y3 z4
4 d4 z4 x2
方法3:随机洗牌多列
这种方法几乎与前面的方法类似。这里唯一的区别是我们在多列上使用sample()函数,这将随机地洗刷这些列。我们在列c2和c3上调用了sample函数,由于这些列,c2和c3被洗牌。
语法:
data.frame(c1=dfc1, c2=sample(dfc2), c3=sample(df$c2))
例子: R程序来随机洗刷一列的内容
df <- data.frame(c1=c(“a1”, “b2”, “c3”, “d4”), c2=c(“w1”, “x2”, “y3”, “z4”), c3=c(“1a”, “2b”, “3c”, “4d”) df_shuffled=data.frame(c1=dfc1,c2=sample(dfc2), c3=sample(df$c2) ) df_shuffled
输出
c1 c2 c3
1 a1 w1 x2
2 b2 y3 z4
3 c3 x2 w1
4 d4 z4 y3