作者f496328mm (为什麽会流泪)
看板R_Language
标题[问题] read.table 多个sep 遗失值miss
时间Sun May 1 00:35:19 2016
问题一
我要读的是笔记本txt档
档案太大无法先用excel处理
我的分隔符号有多个 请问要怎麽写??
我的code
read.table("d:\\xxx.txt" ,sep=";", fill=T, quote="")
我想要用 ; 和 空格 当作分隔符号 未来可能再增加
==========================================================
问题二
我的资料中 有些地方没有值 所以当初在存的时候就直接忽略 连空白都没留
像这样:
sam;16;boy; 2015:00:09:59
green;18;gril
paul;20; 2015:00:09:59
第一行是name
第二行是age
第三行是性别
但是paul没有记录到 所以直接记录到第四行的time
green的time也没记录到
想问有没有什麽方法解决 我目前只想到比较笨的方法
给它特定范围去判断 像性别不是boy就是gril 出现其他就给他NA
还有
这样读资料也会因为每列资料col都不一样 有的时候会出现问题
是可以读成文字再去慢慢拆开 不过有点笨就是了
最後想问如果读资料量上百万笔
还是用read.table吗?
有没有比较好的函数专门处理large data?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.137.162.5
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1462034121.A.29E.html
1F:→ andrew43: 先考虑 data.table package 的 data.table 和 fread 05/01 00:55
2F:→ andrew43: 这在大资料有利,但还是要先解决各列不齐一的问题。 05/01 01:04
3F:→ andrew43: 目前我觉得拆开各列来解似乎是不可必免的,因为在逻级上 05/01 01:07
4F:→ andrew43: 判别哪个栏位要给NA是你来设计的。 05/01 01:09
5F:→ andrew43: 所以核心问题可能变成怎麽有效率且稳健地整理大量字串。 05/01 01:10
感谢 这部分可能会直接撷取分号与分号中的字串 然後去比对
那问题一大大知道吗?
当然也可以变成字串自己再去解开分号内的东西 只是感觉整个程式会变得很笨重
※ 编辑: f496328mm (220.137.162.5), 05/01/2016 01:25:25
6F:→ andrew43: 第一个问题我想还是要先字串处理後再丢给现成func才行。 05/01 02:17
7F:→ andrew43: 因为指定多於一个字符可能会很麻烦,所以主流func不做。 05/01 02:19
8F:→ andrew43: 例如你很难精确地说"a b ;c; d"的结果是什麽。 05/01 02:21
9F:→ andrew43: 所以我觉得指定reg expr自己切会简单很多。 05/01 02:27