如何将R数据帧转换为长格式

亨利

我有数据框:

   Santa.Period            Index          Mean     Variance
1          TRUE          S&P 500 -5.463827e-05 5.552660e-05
2          TRUE              Dow  6.907256e-05 4.798628e-05
3          TRUE NASDAQ Composite -3.683476e-04 7.296956e-05
4          TRUE         FTSE 100  1.922876e-03 6.342067e-05
5          TRUE           CAC 40  1.223700e-03 9.531649e-05
6          TRUE              DAX  1.719576e-04 9.986086e-05
7         FALSE          S&P 500  2.488153e-04 1.676608e-04
8         FALSE              Dow  2.570371e-04 1.415451e-04
9         FALSE NASDAQ Composite  3.989929e-04 1.898479e-04
10        FALSE         FTSE 100  4.931637e-05 1.534737e-04
11        FALSE           CAC 40 -3.337471e-05 2.280848e-04
12        FALSE              DAX  1.916821e-04 2.142012e-04

我想重塑它,以便有针对的每个组合列Santa.PeriodIndex两行给每个组合的均值和方差。

我一直在摆弄重塑的dcast几个小时,但一直无法到达任何地方。

我该如何解决这个问题?

恩豪兰

不需要dcast我想。您可以只使用转置df然后设置df列名粘贴IndexSanta.Period试用:

setNames(data.frame(t(df[, -c(1, 2)])),
         paste(df$Index, df$Santa.Period, sep = "_"))
# output
          S&P 500_TRUE     Dow_TRUE NASDAQ Composite_TRUE FTSE 100_TRUE  CAC 40_TRUE     DAX_TRUE S&P 500_FALSE    Dow_FALSE NASDAQ Composite_FALSE FTSE 100_FALSE  CAC 40_FALSE    DAX_FALSE
Mean     -5.463827e-05 6.907256e-05         -3.683476e-04  1.922876e-03 1.223700e-03 1.719576e-04  0.0002488153 0.0002570371           0.0003989929   4.931637e-05 -3.337471e-05 0.0001916821
Variance  5.552660e-05 4.798628e-05          7.296956e-05  6.342067e-05 9.531649e-05 9.986086e-05  0.0001676608 0.0001415451           0.0001898479   1.534737e-04  2.280848e-04 0.0002142012

数据

df <- structure(list(Santa.Period = c(TRUE, TRUE, TRUE, TRUE, TRUE, 
TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE), Index = c("S&P 500", 
"Dow", "NASDAQ Composite", "FTSE 100", "CAC 40", "DAX", "S&P 500", 
"Dow", "NASDAQ Composite", "FTSE 100", "CAC 40", "DAX"), Mean = c(-5.463827e-05, 
6.907256e-05, -0.0003683476, 0.001922876, 0.0012237, 0.0001719576, 
0.0002488153, 0.0002570371, 0.0003989929, 4.931637e-05, -3.337471e-05, 
0.0001916821), Variance = c(5.55266e-05, 4.798628e-05, 7.296956e-05, 
6.342067e-05, 9.531649e-05, 9.986086e-05, 0.0001676608, 0.0001415451, 
0.0001898479, 0.0001534737, 0.0002280848, 0.0002142012)), .Names = c("Santa.Period", 
"Index", "Mean", "Variance"), class = "data.frame", row.names = c("1", 
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将长格式的数据帧转换为适当格式的列表?

如何将此数据帧转换为长格式

将矩阵转换为长格式(R)的数据帧

如何将数据从长格式转换为宽格式

如何将 R 数据从长格式转换为宽格式

使用R行中存储的密钥将数据帧从宽格式转换为长格式

将长格式数据帧转换为宽格式但保留 R 中的列数

R - 使用多个值列将数据帧从长格式转换为宽格式

如何将数据帧转换为可用格式以在R中进行序列挖掘?

我将宽数据帧转换为长格式的 R 代码有什么问题?

将数据帧转换为 R 中的一列长格式

如何将短数据转换为长数据格式但将日期保留为日期

如何将colSums转换为R到数据帧

R:如何将数据帧转换为nxn矩阵

使用R中多个“关键”列中的值将数据帧从长格式复杂转换为宽格式

如何将2x2列联表转换为长格式的数据框?

如何将字典的数据帧转换为数据帧?

如何将数据从长格式转换为宽格式,以便将重复的行添加到末尾以在 R 中创建新列?

如何将数据列从数据帧转换为 json 格式?

如何将此数据帧转换为以下格式?

如何将数据帧转换为持续接触 API 所需的确切格式?

Pyspark + 关联规则挖掘:如何将数据帧转换为适合频繁模式挖掘的格式?

如何将数据帧的格式从两行转换为单行

我想知道如何将数据帧转换为json格式

将宽数据帧转换为长数据帧

将长数据帧转换为宽数据帧

使用 R 将多列数据帧转换为长 3 列数据帧

如何将这个宽数据帧转换成这个长数据帧?

如何将多索引数据转换为数据帧