在Azure ML Studio中的R中转置和添加列

时间:2015-07-03 05:52:48

标签: r azure transpose

我在Azure中获取以下数据集。每行都是与预测模型相关的参数。

我对R比较新。我尝试了以下代码,但它没有给我预期的输出。在我转置数据集后,我想添加一个额外的列“月 - 年”。

有人能帮助我吗?感谢。

数据集

features    V1      V2      V3      V4      V5      V6      V7      V8      V9      V10     V11     V12
A           28.21   42.03   48.56   46.85   46.03   54.6    63.87   50      53.34   43.47   34.66   27.48
B           1333    1348.64 1364.28 1379.92 1395.56 1411.2  1426.84 1442.48 1458.11 1473.75 1489.39 1505.03
C           10.05   5.46    4.82    5.27    5.07    4.07    9.53    1.95    6.95    6.54    5.91    0.56
D           18.22   18.41   14.31   30.28   18.16   15.52   12.52   13.14   15.05   8.89    12.51   25.25

R代码

# Map 1-based optional input ports to variables
dataset <- maml.mapInputPort(1) 

a <- c("A", "B", "C", "D")

data.set <- cbind(a, dataset)
names(data.set)[1] <- c("features")

# first remember the names
n <- dataset$features

# transpose all but the first column (name)
df.aree <- as.data.frame(t(data.set[,-1]))
names(data.set)[1] <- n

df.aree$myfactor <- factor(row.names(df.aree))

maml.mapOutputPort("df.aree")

预期结果

Month-Year  A       B           C       D
01-01-15    28.21   1333        10.05   18.22
01-02-15    42.03   1348.64     5.46    18.41
01-03-15    48.56   1364.28     4.82    14.31
01-04-15    46.85   1379.92     5.27    30.28
01-05-15    46.03   1395.56     5.07    18.16
01-06-15    54.6    1411.2      4.07    15.52
01-07-15    63.87   1426.84     9.53    12.52
01-08-15    50      1442.48     1.95    13.14
01-09-15    53.34   1458.11     6.95    15.05
01-10-15    43.47   1473.75     6.54    8.89
01-11-15    34.66   1489.39     5.91    12.51
01-12-15    27.48   1505.03     0.56    25.25

1 个答案:

答案 0 :(得分:0)

使用$("#my-datepicker").datepicker().on('show.bs.modal', function(event) { // prevent datepicker from firing bootstrap modal "show.bs.modal" event.stopPropagation(); }); seq日期from创建“MonYear”。

to

转置原始数据集中的非数字列(输出将为 MonYear <- format(seq(as.Date('2015-01-01'), as.Date('2015-12-01'), by = 'month'), '%d-%m-%y') 。我们通过组合“MonYear”和矩阵输出来创建matrix

data.frame

相应地更改列名和行名

 df2 <- data.frame(MonYear,t(df1[-1]))