【问题标题】:Move Columns To Lines R [duplicate]将列移动到 R 行 [重复]
【发布时间】:2017-12-04 12:04:30
【问题描述】:

我目前有这种数据框:

 gauche droite
1        0      1
2        0      0
3        1      0
4        0      0
5        0      0
6        0      0
7        0      0
8        0      0
9        0      0
10       0      0
11       0      0

并希望在列表中显示行,具有:

[row1,column1], [row1,column2],[row2,column1],[row2,column2],[row3,column1][row3,column2] etc....

感谢您的回答!

【问题讨论】:

  • 请解释一下“作为列表”是什么意思。 List 是 R 中的一种特殊结构,尚不清楚这是否是您所追求的。此外,请考虑以易于粘贴的形式共享您的数据。
  • c(t(your_data)) 能给你想要的吗?
  • 如果你展示一个你想要的输出的具体例子会更清楚
  • @akrun 我不知道是不是这样。我的意思是......它可能是,但我不清楚所需的输出,所以我不确定什么问题是合适的欺骗候选人。
  • 我没有得到模式...(1,1) (1,2) (2,1) (2,2) (3,1) (3,2) 那么呢?任何递归公式?

标签: r


【解决方案1】:
N=10
gauche<-rep(1:N)
droite<-ifelse(runif(N)>0.5,1,0)
resultat<-expand.grid(gauche,droite)

导致:

lapply(c(1,4,6),function(x) paste0(resultat[x,]))

[[1]]
[1] "1" "0"

[[2]]
[1] "4" "0"

[[3]]
[1] "6" "0"

PS:

当然c(1,4,6) 是任意的。 OP 需要更新初始请求,以便更好地制定答案。

【讨论】:

    【解决方案2】:

    使用purrr::transpose 转置一个列表(数据框就是一个列表)。

    【讨论】:

    • 成功了,谢谢!
    • @EEFB 如果您对答案感到满意,请验证它。
    猜你喜欢
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 1970-01-01
    • 2021-10-20
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多