【发布时间】:2017-06-17 17:42:07
【问题描述】:
我正在将一系列调查作为 .csv 文件导入并组合成一个数据集。问题是对于七个文件之一,一些变量的导入略有不同。数据集很大,我想找到一种方法来编写一个函数来运行给我带来麻烦的数据集。
在一些变量中,当应该有一个点时有一个下划线。并非所有变量都具有相同的格式,但不正确的变量是,因为下划线始终是列名的第 6 个元素。
我希望 R 查找第 6 个元素,如果它是下划线,则将其替换为点。下面是一个虚构的例子。
col_names <- c("s1.help_needed",
"s1.Q2_im_stuck",
"s1.Q2.im_stuck",
"s1.Q3.regex",
"s1.Q3_regex",
"s2.Q1.is_confusing",
"s2.Q2.answer_please",
"s2.Q2_answer_please",
"s2.someone_knows_the answer",
"s3.appreciate_the_help")
我认为对此有一个正则表达式的答案,但我正在努力寻找一个。也许还有一个整洁的答案?
【问题讨论】:
-
据我所知,您的所有示例都没有在第 5 个字符中包含下划线。
-
是的,向左滚动,例如
s1.Q3_regex -
@TimBiegeleisen - 这是第 6 个字符
-
@thelatemail 很好,我什至没有数,我的眼睛抓住了那些下划线,然后我急忙回答。我认为这是 OP 真正想要的。