楼主: 126victory
8877 10

[问答] 将excel的文字替换为数字怎么做? [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

高中生

32%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
2.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
120 点
帖子
17
精华
0
在线时间
20 小时
注册时间
2019-7-29
最后登录
2019-9-20

楼主
126victory 发表于 2019-8-9 15:16:44 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如何将此excel中的文字用r语言替换为数字,令偶尔=1,有时=2,经常=3,持续=4,跪求,谢谢了! 图片1.png

二维码

扫码加我 拉你入群

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

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

关键词:EXCEL xcel exce cel 怎么做

沙发
liujiajin 发表于 2019-8-9 15:46:30 来自手机
126victory 发表于 2019-8-9 15:16
如何将此excel中的文字用r语言替换为数字,令偶尔=1,有时=2,经常=3,持续=4,跪求,谢谢了! ...
为什么不在Excel里改?那样岂不是很方便?改完另存为csv再导入
如果你一定要的话,方法有很多,我提供一个思路
例如数据集为A,字段名为jl
A $ jl[A $ jl=“偶尔”]<-  1
etc
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

藤椅
觅寄忧谷 发表于 2019-8-9 16:17:12
其实就是因子转化,一般用R软件的时候熟练了矩阵、数据框和向量,但是忽视了每本书一开始讲的数据类型中的因子,其实你的是指就是因子,我自己写了两行代码就可以理解了:
x<-c("偶尔","持续","有时","偶尔","偶尔","有时","偶尔","有时","持续","偶尔","经常","偶尔","持续","偶尔","偶尔")
x1<-factor(x,labels = c(1,2,3,4),levels = c("偶尔","有时","经常","持续"))
输的x1的结果为
1 4 2 1 1 2 1 2 4 1 3 1 4 1 1
Levels: 1 2 3 4
数据结构如下:
str(x1)
Factor w/ 4 levels "1","2","3","4": 1 4 2 1 1 2 1 2 4 1 ...
只是转化为文本是不对的,数据类型应该是上述的四个levels的因子,而且,如果有顺序,还应该添加order=T的参数
例如,
x1<-factor(x,labels = c(1,2,3,4),levels = c("偶尔","有时","经常","持续"),ordered = T)
x1
1 4 2 1 1 2 1 2 4 1 3 1 4 1 1
Levels: 1 < 2 < 3 < 4
观察数据结构
str(x1)
Ord.factor w/ 4 levels "1"<"2"<"3"<"4": 1 4 2 1 1 2 1 2 4 1 ...
可见生成了1"<"2"<"3"<"4"的四个有序因子,转化成有序很重要的是我们可以认为持续、经常登有优劣顺序,转化为文本是不能比较持续的
详细的可以看看R语言书记,基本上前两章将数据类型一定会有讲因子的,这比你问题中描述的转化为文本更符合统计的要求。
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

板凳
觅寄忧谷 发表于 2019-8-9 16:28:11
补充一点,为啥要转化为因子,因子和文本看上去一样,但是计算机不认啊,有序因子是有逻辑关系的,但是文本没法比较,例如:
> x2<-factor(x,levels = c("偶尔","有时","经常","持续"),ordered = T)
> x2>"有时"
[1] FALSE  TRUE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE  TRUE FALSE  TRUE FALSE FALSE
可见,转化为有序因子的能够比较,但是如果是文本:
> x>"有时"
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
全是F,因为文本没有顺序的关系,人看起来一样,但是计算机眼里是不一样的

报纸
126victory 发表于 2019-8-9 16:49:06
liujiajin 发表于 2019-8-9 15:46
为什么不在Excel里改?那样岂不是很方便?改完另存为csv再导入
如果你一定要的话,方法有很多,我提供一个 ...
哈哈,我在拿这个简单的excel练习r,想学学用r怎么换成数字

地板
126victory 发表于 2019-8-9 16:52:07
觅寄忧谷 发表于 2019-8-9 16:28
补充一点,为啥要转化为因子,因子和文本看上去一样,但是计算机不认啊,有序因子是有逻辑关系的,但是文本 ...
我还是不知道这个数据怎么替换为数字,因为有好多列,一列一列改有点麻烦

7
liujiajin 发表于 2019-8-9 17:34:28
126victory 发表于 2019-8-9 16:49
哈哈,我在拿这个简单的excel练习r,想学学用r怎么换成数字
那你这个数据是怎么导入进去的?是通过打开excel吗?还是通过命令导入?

8
liujiajin 发表于 2019-8-9 17:35:30

例如数据集为A,字段名为jl

A $ jl[A $ jl=“偶尔”]<- 1

9
126victory 发表于 2019-8-9 17:47:10
liujiajin 发表于 2019-8-9 17:35
例如数据集为A,字段名为jl
A $ jl[A $ jl=“偶尔”]&lt;- 1
好的,谢谢您

10
liujiajin 发表于 2019-8-9 17:48:58
126victory 发表于 2019-8-9 17:47
好的,谢谢您
我整个人都不好了,在A和jl之间有个“$”符号,怎么都打不出来

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

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