楼主: wlnk
5149 9

[问答] R从数据库中取数据如何控制数据类型? [推广有奖]

  • 0关注
  • 3粉丝

博士生

42%

还不是VIP/贵宾

-

威望
0
论坛币
53 个
通用积分
0.0059
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
7363 点
帖子
141
精华
1
在线时间
261 小时
注册时间
2005-8-10
最后登录
2023-11-22

楼主
wlnk 发表于 2011-7-1 09:44:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
设置了R通过RODBC连接oracle数据库时,通过R从中取数据,如何控制取出数据的类型?
在取数时,在数据库中为浮点数的数字,比如0.0231,取出后都成为了0.而有的数据本来是字符型的,比如‘2351’,结果取出后成为了数值型的,如何控制呢?
多谢。
二维码

扫码加我 拉你入群

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

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

关键词:数据类型 数据库 Oracle RODBC 字符型 数据库 数据类型

你若不想做,会找到一个借口;你若想做,会找到一个方法。

沙发
wlnk 发表于 2011-7-1 10:23:03
希望大家有过经验的多多帮助啊。现在从数据库中取不出正确的数据来,就使用不了R了。。。
你若不想做,会找到一个借口;你若想做,会找到一个方法。

藤椅
ltx5151 发表于 2011-7-1 15:03:11
2# wlnk
lz是通过传入SQL命令调用的数据还是用R函数调用的。

板凳
wzy1713 发表于 2011-7-5 11:00:53
可以用colClasses来指定各列的数据类型阿,比如colClasses=c("character","numeric")

报纸
wlnk 发表于 2011-7-8 12:12:09
3# ltx5151

是通过传入sql语句调用的,还可以通过R函数直接调用?
你若不想做,会找到一个借口;你若想做,会找到一个方法。

地板
wlnk 发表于 2011-7-26 18:01:37
刚刚发现,如果oracle中数据类型设置为number(m,n)的格式,则通过ODBC读出来的数据都为0;如果数据类型设置为number,则可以正确取出,这是什么原因啊?
难道大家都没有遇到过这个普遍的问题?
你若不想做,会找到一个借口;你若想做,会找到一个方法。

7
trier2006 发表于 2011-7-27 08:39:37
6# wlnk
去help maillist问问
最好的医生是自己,最好的药物是时间……

8
wlnk 发表于 2011-7-27 13:03:50
7# trier2006

昨日在统计之都上有人给出了一点建议。我想可能是R从ODBC中读取数据时不完善造成的。在Oracle中类型为Decimal的数据,不能够正确读取到R中。
所以,在查询语句中,采用to_number对该数据进行转化,就可以正确读取了。
费事了一点,不过总归可以得到数据了。
希望RODBC以后有所改进。
你若不想做,会找到一个借口;你若想做,会找到一个方法。

9
鸟儿找虫吃 发表于 2016-7-26 12:48:39
wzy1713 发表于 2011-7-5 11:00
可以用colClasses来指定各列的数据类型阿,比如colClasses=c("character","numeric")
如果在read.table时想设置其中一列的数据类型该怎么弄,谢谢。,比如gradel有A,B,C三列,我想读入的时候只指定其中B列的数据为character

10
Sheeta! 发表于 2018-1-9 20:53:26
您好,我在使用通过R中的RODBC提取Oracle数据时,本身数据为字符型“000001”,但是提取出来之后却变成数值型,不知道您解决了吗?

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

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