【发布时间】:2020-04-16 04:22:29
【问题描述】:
我有一个数据集,其中列的名称非常混乱,我想简化它们。下面的示例数据:
structure(list(MemberID = 1L, This.was.the.first.question = "ABC",
This.was.the.first.date = 1012018L, This.was.the.first.city = "New York",
This.was.the.second.question = "XYZ", This.was.the.second.date = 11052018L,
This.was.the.second.city = "Boston"), .Names = c("MemberID",
"This.was.the.first.question", "This.was.the.first.date", "This.was.the.first.city",
"This.was.the.second.question", "This.was.the.second.date", "This.was.the.second.city"
), class = "data.frame", row.names = c(NA, -1L))
MemberID 这是第一个问题 这是第一个约会 这是第一个城市 这是第二个问题 这是第二个约会 这是第二个城市
1 ABC 1012018 纽约 XYZ 11052018 波士顿
这就是我希望列的样子:
会员 ID Question_1 Date_1 City_1 Question_2 Date_2 City_2所以基本上列名是相同的,但每第三列数字增加 1。我该怎么做?虽然这个示例数据集很小,但我的真实数据集要大得多,我想通过列索引和迭代来学习如何做到这一点。
【问题讨论】:
-
假设您有 n 个“集合”,并且您的数据框称为 df;尝试 n=2; colnames(df)