楼主: 403361966@qq.co
2588 8

[问答] R语言split相关问题 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

小学生

71%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
57 点
帖子
11
精华
0
在线时间
3 小时
注册时间
2019-1-7
最后登录
2019-1-10

楼主
403361966@qq.co 发表于 2019-1-7 09:55:19 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大佬,谢谢帮助。现在有一个数据框,列中数据为“A B”或“A B C”结构,我用split切分的时候,以“ ”为分割标志。


当我分出A的时候,数据显示正常,但是当我分割B的时候,有C的数据就会丢失C,当我分割C时,没有C的数据会自动补充NA。
请问各位大佬,该怎么直接分割B或BC,或是分割C时,没有C的数据不填充NA,改为填充“ ”字符(列表长度不变)。
请各位大佬帮助,我是R初学者,谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:数据显示 初学者

沙发
fyc7346165 发表于 2019-1-7 14:12:48
楼主能不能放一部分数据上来看看,这个“列中数据为“A B”或“A B C”结构”真心看不太懂

藤椅
403361966@qq.co 发表于 2019-1-7 16:17:43
fyc7346165 发表于 2019-1-7 14:12
楼主能不能放一部分数据上来看看,这个“列中数据为“A B”或“A B C”结构”真心看不太懂
好的,谢谢大佬。 QQ图片20190107161510.png 数据如图。我想从第一个英文单词和第二个英文单词中间切,但是当数据是单词+Sp.+数字的时候,数字就会被自动省略。
所以我想了比较蠢的办法,切成三列,删除NA来解决。
如果调用if语句,请问该怎么书写。
谢谢!

板凳
fyc7346165 发表于 2019-1-7 16:31:09
403361966@qq.co 发表于 2019-1-7 16:17
好的,谢谢大佬。数据如图。我想从第一个英文单词和第二个英文单词中间切,但是当数据是单词+Sp.+数字的时 ...
你是要把这列数据分成两列,一列是前面的英文,一列是SP. + 数字这样么?

报纸
403361966@qq.co 发表于 2019-1-7 16:33:34
fyc7346165 发表于 2019-1-7 16:31
你是要把这列数据分成两列,一列是前面的英文,一列是SP. + 数字这样么?
我想把这个数据分成两列,一列是前面的英文或者SP.,另一串是后面的东西。
分隔符我用的space,但是Sp.和数字之间也有space

地板
zhou1_20 发表于 2019-1-7 18:03:19
  1. dt <- data.frame(v1=c("hello word","he sp. 234","sp. 234"))
  2. library(stringr)
  3. dt$v1%>%str_split(' ')
复制代码
已有 1 人评分论坛币 收起 理由
jiangbeilu + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

7
caimiao0714 学生认证  发表于 2019-1-7 23:53:37
zhou1_20 发表于 2019-1-7 18:03
stringr里面的str_split会把vector分成list,对于data.frame的情况下不是很实用,更推荐用tidyr::separate()。比如
  1. require(dplyr)
  2. require(tidyr)

  3. data %>% separate(x, sep = " ", into = paste0("x", 1:3)) %>% replace_na(" ")
复制代码
已有 1 人评分论坛币 收起 理由
jiangbeilu + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

8
403361966@qq.co 发表于 2019-1-8 09:17:37
zhou1_20 发表于 2019-1-7 18:03
非常感谢,学习到了!

9
403361966@qq.co 发表于 2019-1-8 09:19:38
caimiao0714 发表于 2019-1-7 23:53
stringr里面的str_split会把vector分成list,对于data.frame的情况下不是很实用,更推荐用tidyr::separat ...
非常感谢,学习到了!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-12 19:17