R编程中的熔炼和铸造
Melting和Casting是 R 编程中有趣的方面之一,可以改变数据的形状并进一步获得所需的形状。 R 编程语言有许多方法可以使用reshape包来重塑数据。 melt()和cast()是有效重塑数据的函数。 R 中有许多需要数据重塑的包。每个数据都在多行数据框中指定,每行具有不同的详细信息,这种类型的数据格式称为长格式。
在 R 中熔化
R编程中的融合是为了组织数据。它是使用melt()函数执行的,该函数采用必须保持不变的数据集和列值。使用melt() ,将数据帧转换为长格式并拉伸数据帧。
Syntax:
melt(data, na.rm = FALSE, value.name = “value”)
Parameters:
data: represents dataset that has to be reshaped
na.rm: if TRUE, removes NA values from dataset
value.name: represents name of variable used to store values
例子:
# Required library for ships dataset
install.packages("MASS")
# Required for melt() and cast() function
install.packages("reshape2")
install.packages("reshape")
#Loading the libraries
library(MASS)
library(reshape2)
library(reshape)
# Create dataframe
n <- c(1, 1, 2, 2)
time <- c(1, 2, 1, 2)
x <- c(6, 3, 2, 5)
y <- c(1, 4, 6, 9)
df <- data.frame(n, time, x, y)
# Original data frame
cat("Original data frame:\n")
print(df)
# Organize data w.r.t. n and time
molten.data <- melt(df, id = c("n","time"))
cat("\nAfter melting data frame:\n")
print(molten.data)
输出:
Original data frame:
n time x y
1 1 1 6 1
2 1 2 3 4
3 2 1 2 6
4 2 2 5 9
After melting data frame:
n time variable value
1 1 1 x 6
2 1 2 x 3
3 2 1 x 2
4 2 2 x 5
5 1 1 y 1
6 1 2 y 4
7 2 1 y 6
8 2 2 y 9
R中的铸造
R编程中的铸造用于使用cast()函数重塑熔融数据,该函数采用聚合函数和公式来相应地聚合数据。该函数用于根据cast()函数中的公式将长格式数据转换回某种聚合形式的数据。
Syntax:
cast(data, formula, fun.aggregate)
Parameters:
data: represents dataset
formula: represents the form in which data has to be reshaped
fun.aggregate: represents aggregate function
例子:
# Print recasted dataset using cast() function
cast.data <- cast(molten.data, n~variable, sum)
print(cast.data)
cat("\n")
time.cast <- cast(molten.data, time~variable, mean)
print(time.cast)
输出:
n x y
1 1 9 5
2 2 7 15
time x y
1 1 4 3.5
2 2 4 6.5