我有一个数据集调用索引是一个子集的结果:
X1 X2 X3 X4 X5 X6 X7 X8 X9
1 201860304 677673878 43255779 158604525 72092966 28837186 57674373 57674373 144185931
145 205140086 688684575 43958590 161181496 73264317 29305727 58611453 58611453 146528633
291 213047739 715231695 45653087 167394652 76088478 30435391 60870783 60870783 152176956
442 220164438 739123472 47178094 172986345 78630157 31452063 62904125 62904125 157260313
594 227189443 762707415 48683452 178505991 81139087 32455635 64911269 64911269 162278173
首先,我不知道为什么在子集之后,行号显示为“ 1、145、291 ...”而不是“ 1、2、3 ...”。
第二,当我使用
indices <- as.data.frame(apply(indices, 2, function(y) 100 * y / y[1]))
结果是:
X1 X2 X3 X4 X5 X6 X7 X8 X9
1 100.0000 100.0000 100.0000 100.0000 100.0000 100.0000 100.0000 100.0000 100.0000
145 101.6248 101.6248 101.6248 101.6248 101.6248 101.6248 101.6248 101.6248 101.6248
291 105.5422 105.5422 105.5422 105.5422 105.5422 105.5422 105.5422 105.5422 105.5422
442 109.0677 109.0677 109.0677 109.0677 109.0677 109.0677 109.0677 109.0677 109.0677
它重复同一列。
我该如何解决这个问题?
谢谢!
如果我们需要重置行名
row.names(indices) <- NULL
此外,我们可以以向量化的方式进行此操作
100 *indices/indices[1,][col(indices)]
你好。它不起作用。第二部分
@ErnestoParedes您可以显示问题是什么。我读了您的问题,因为行名部分不是1、2、3
可以了 我现在的问题是,当我使用apply函数时,所有列的结果都是相同的,但必须有所不同。
@ErnestoParedes不一样。您可以更精确地打印输出(unlist(indices [2,]),数字= 16)。