京公网安备 11010802034615号
经营许可证编号:京B2-20210330
R语言—日常随笔
1.字符处理函数:paste()
需求:将字符向量中的字符串,用逗号隔开,合并为一句话。
> ##字符向量
> ls_1
[1] "天津" "上海" "安徽" "福建" "四川" "重庆" "陕西" "青海" "新疆"
> ##用逗号隔开字符串,并合并为一句话
> paste(ls_1, sep = "",collapse=",")
[1] "天津,上海,安徽,福建,四川,重庆,陕西,青海,新疆"
2.在数据整合过程中,数字转换为带百分号(%)的形式,使用的方法。
> paste(20.21,"%",sep="")
[1] "20.21%"
可以通过上面的方式实现将数字带上%号,但数字也就变成了字符串。
3.如果表格结构为三列,想根据其中两列对第三列数字进行汇总。可采用下面方法。
> ##生成案例数据
> names<-c("a","b","b","c","c")
> sex<-c("男","女","女","男","男")
> score<-c(1.56,1.78,1.82,1.32,1.21)
> man<-data.frame(names,sex,score)
> ##查看数据结构
> man
names sex score
1 a 男 1.56
2 b 女 1.78
3 b 女 1.82
4 c 男 1.32
5 c 男 1.21
> ##根据姓名与性别汇总成绩
> aggregate(man$score~man$names+man$sex,man,mean)
man$names man$sex man$score
1 a 男 1.560
2 c 男 1.265
3 b 女 1.800
4.字符串去空格
##将sd中的空格去除
> sd<-("as db ")
> gsub(" ","",sd)
[1] "asdb"
注:sub与gsub的区别在于sub只替换第一次发现的字符,而gsub是不计匹配到的次数,发现符合匹配都会被替换。
5.单列去重(unique)
> ##创造案例数据
> x <- c(3:5, 11:8, 8 + 0:5)
> ##查看数据样式
> x
[1] 3 4 5 11 10 9 8 8 9 10 11 12 13
> ##查看去重后效果
> unique(x)
[1] 3 4 5 11 10 9 8 12 13
2.ifelse语句返回值的特殊性
正常的ifelse语句格式为ifelse(判断条件,TRUE时执行,FALSE时执行)
学过编程语言的人不难理解,但在R中容易被误导。今天我遇到了一个情况。需求是判断一个字符向量的长度,如果大于0,返回向量所有内容,否则输出"没有"两个字。结果却只输出了1个元素。
代码如下:
> ##可以看出向量有值
> ls_1
[1] "天津" "上海" "安徽" "福建" "四川" "重庆" "陕西" "青海" "新疆"
> ##向量内有9个元素
> length(ls_1)
[1] 9
> ##进行判断
> ifelse(length(ls_1),ls_1,"没有")
[1] "天津"
> ##结果只显示了第一个元素,后来得知,判断条件有几个元素,就会返回ls_1向量的几个元素
> ##如果我想每次都全部现实,可以这样写
> ifelse(is.na(ls_1),"没有",ls_1)
[1] "天津" "上海" "安徽" "福建" "四川" "重庆" "陕西" "青海" "新疆"
总结:R语言的if判断语句,虽然大部分情况都是和其他编程语言一样使用,但在返回内容包含多个值时,需要注意返回结果是否正确。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数据驱动决策的浪潮中,数据挖掘与数据分析是两个高频出现且极易被混淆的概念。有人将二者等同看待,认为“做数据分析就是做数 ...
2026-04-01在数据驱动决策的时代,企业与从业者每天都会面对海量数据——电商平台的用户行为数据、金融机构的信贷风险数据、快消品牌的营销 ...
2026-04-01在数字化转型的浪潮中,企业数据已从“辅助运营的附属资源”升级为“驱动增长的核心资产”,而一套科学、可落地的企业数据管理方 ...
2026-04-01在数字化时代,每一位用户与产品的交互都会留下可追溯的行为轨迹——电商用户的浏览、加购、下单,APP用户的注册、登录、功能使 ...
2026-03-31在日常数据统计、市场调研、学术分析等场景中,我们常常需要判断两个分类变量之间是否存在关联(如性别与消费偏好、产品类型与满 ...
2026-03-31在CDA(Certified Data Analyst)数据分析师的职场实战与认证考核中,“可解释性建模”是核心需求之一——企业决策中,不仅需要 ...
2026-03-31多层感知机(MLP,Multilayer Perceptron)作为深度学习中最基础、最经典的神经网络模型,其结构设计直接决定了模型的拟合能力、 ...
2026-03-30在TensorFlow深度学习实战中,数据集的加载与预处理是基础且关键的第一步。手动下载、解压、解析数据集不仅耗时费力,还容易出现 ...
2026-03-30在CDA(Certified Data Analyst)数据分析师的日常工作中,“无监督分组、挖掘数据内在聚类规律”是高频核心需求——电商场景中 ...
2026-03-30机器学习的本质,是让模型通过对数据的学习,自主挖掘规律、实现预测与决策,而这一过程的核心驱动力,并非单一参数的独立作用, ...
2026-03-27在SQL Server数据库操作中,日期时间处理是高频核心需求——无论是报表统计中的日期格式化、数据筛选时的日期类型匹配,还是业务 ...
2026-03-27在CDA(Certified Data Analyst)数据分析师的能力体系与职场实操中,高维数据处理是高频且核心的痛点——随着业务场景的复杂化 ...
2026-03-27在机器学习建模与数据分析实战中,特征维度爆炸、冗余信息干扰、模型泛化能力差是高频痛点。面对用户画像、企业经营、医疗检测、 ...
2026-03-26在这个数据无处不在的时代,数据分析能力已不再是数据从业者的专属技能,而是成为了职场人、管理者、创业者乃至个人发展的核心竞 ...
2026-03-26在CDA(Certified Data Analyst)数据分析师的能力体系中,线性回归是连接描述性统计与预测性分析的关键桥梁,也是CDA二级认证的 ...
2026-03-26在数据分析、市场研究、用户画像构建、学术研究等场景中,我们常常会遇到多维度、多指标的数据难题:比如调研用户消费行为时,收 ...
2026-03-25在流量红利见顶、获客成本持续攀升的当下,营销正从“广撒网”的经验主义,转向“精耕细作”的数据驱动主义。数据不再是营销的辅 ...
2026-03-25在CDA(Certified Data Analyst)数据分析师的全流程工作中,无论是前期的数据探索、影响因素排查,还是中期的特征筛选、模型搭 ...
2026-03-25在当下数据驱动决策的职场环境中,A/B测试早已成为互联网产品、运营、营销乃至产品迭代优化的核心手段,小到一个按钮的颜色、文 ...
2026-03-24在统计学数据分析中,尤其是分类数据的分析场景里,卡方检验和显著性检验是两个高频出现的概念,很多初学者甚至有一定统计基础的 ...
2026-03-24