楼主: 天涯印象
1799 5

[实际应用] 对字符串进行从右至左选择 [推广有奖]

  • 0关注
  • 0粉丝

已卖:48份资源

硕士生

4%

还不是VIP/贵宾

-

威望
0
论坛币
53 个
通用积分
0.0600
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
3305 点
帖子
58
精华
0
在线时间
142 小时
注册时间
2016-4-17
最后登录
2024-3-14

楼主
天涯印象 学生认证  发表于 2017-6-30 09:48:36 |AI写论文
5论坛币
e.xlsx (11.45 KB)
QQ截图20170630094542.jpg
有一个Excel表,读取成数据框后,把空值填充为0,我现在想根据NO列最后一位数字进行分组,然后对NUM进行求和,求大神解答啊

最佳答案

cheetahfly 查看完整内容

假设数据变量名为dat:
关键词:字符串 Excel表 EXCEL exce xcel

沙发
cheetahfly 在职认证  发表于 2017-6-30 09:48:37
假设数据变量名为dat:
  1. library(tidyverse)
  2. library(stringr)
  3. dat %>%
  4.   mutate(group = str_sub(NO, -1, -1)) %>%
  5.   group_by(group) %>%
  6.   summarise_at(vars(NUM, knum), sum)
复制代码

藤椅
天涯印象 学生认证  发表于 2017-6-30 11:23:52
  1. library(readxl)
  2. testdata <- read_excel(path = "e.xlsx", sheet = 1, col_names = T)
  3. NO1 <- testdata$NO
  4. testdata[is.na(testdata)] <- 0   #缺失值替换为0

  5. library(tidyverse)
  6. library(stringr)
  7. result <- testdata %>%
  8.   mutate(group = str_sub(NO, -1, -1)) %>%
  9.   group_by(group) %>%
  10.   summarise_at(vars(NUM, knum), sum)

  11. library(ggplot2)
  12. ggplot(result, aes(group, NUM))+
  13.   geom_bar(stat = "identity")
复制代码
感谢楼上指导,把结果贴出来供参考 Rplot.jpeg

板凳
天涯印象 学生认证  发表于 2017-6-30 11:25:07
cheetahfly 发表于 2017-6-30 09:48
假设数据变量名为dat:
能不能再给解释一下 %>%的含义啊?非常感谢

报纸
jameschin007 发表于 2017-6-30 11:28:20
用sqldf 包  假设你的df 叫做df1
select  substr(No, -1,1) as aaa, sum(num)  from df1  group by aaa

地板
cheetahfly 在职认证  发表于 2017-6-30 12:09:17
天涯印象 发表于 2017-6-30 11:25
能不能再给解释一下 %>%的含义啊?非常感谢
叫做“Pipe operator”,在tidyverse等很多包中都用到该运算符,主要作用是,让代码更符合逻辑,更易读懂和维护,并减少产生中间变量。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 05:41