由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - 弱问大数据处理
相关主题
问一个partial derivative 的问题问个SAS数据处理的问题
求助,压力好大healthcare 行业工作怎么样?
SAS regex questions用SAS如何管理large datset,存储,读取,高效的数据处理?
建议检查硬盘Re: HELP with SAS!关于在银行做risk analysis
[合集] 生物统计硕士找工作,药厂SAS Programmer vs非药厂BiostatisSAS数据处理问题:让缺失数据自动采用上个数据值
谁来说说Travelers R&D intern的技术面?ask SAS code
[R求问]如何用ANOVA处理unbalanced dataSAS book问题
请问有人知道Strata Decision Technology 么?求救, 一个SAS 数据处理问题
相关话题的讨论汇总
话题: sas话题: 数据话题: cookbook话题: python话题: 处理
进入Statistics版参与讨论
1 (共1页)
D*********2
发帖数: 535
1
最近接一新project,40+ million line,大概70个左右variable,数据给的是.csv格
式。问题是cookbook做的很差,很多unexpected value,比如一variable cookbook上
写是0-9 coding,结果什么负数啊,感叹号啊,有时missing value还用date表示。非
常不能理喻。
所以第一个task就是逐一审阅unexpected values,补全cookbook
这个大小的数据用R没戏,用SAS在不知道这列到底改是啥数据类型的时候要反复调很多
次,而且读进去有时候也匪夷所思的,出现些更离奇的符号,*啊,~啊。现在解决的办
法就是分段读进R(大概10 million一段),然后做summary,然后人工总结,说实话满
累的。
而且这也不是个办法,之后merge阿什么的应该还是要SAS SQL,感觉还是要一次性全搞
进SAS才是正道。我SAS很差,Python之类之略知皮毛,求这种情况SAS应该怎么倒,或
better solution。
谢谢谢谢。
a****g
发帖数: 8131
2
那就先建一个小dataset, 比如100k
这样测试的时候比较节约时间
做完之后再跑全部
先看看analysis plan吧, 说不定有的column根本不需要

【在 D*********2 的大作中提到】
: 最近接一新project,40+ million line,大概70个左右variable,数据给的是.csv格
: 式。问题是cookbook做的很差,很多unexpected value,比如一variable cookbook上
: 写是0-9 coding,结果什么负数啊,感叹号啊,有时missing value还用date表示。非
: 常不能理喻。
: 所以第一个task就是逐一审阅unexpected values,补全cookbook
: 这个大小的数据用R没戏,用SAS在不知道这列到底改是啥数据类型的时候要反复调很多
: 次,而且读进去有时候也匪夷所思的,出现些更离奇的符号,*啊,~啊。现在解决的办
: 法就是分段读进R(大概10 million一段),然后做summary,然后人工总结,说实话满
: 累的。
: 而且这也不是个办法,之后merge阿什么的应该还是要SAS SQL,感觉还是要一次性全搞

A*******s
发帖数: 3942
3
read it as text strings. then use some regular expression to do pattern
matching.

【在 D*********2 的大作中提到】
: 最近接一新project,40+ million line,大概70个左右variable,数据给的是.csv格
: 式。问题是cookbook做的很差,很多unexpected value,比如一variable cookbook上
: 写是0-9 coding,结果什么负数啊,感叹号啊,有时missing value还用date表示。非
: 常不能理喻。
: 所以第一个task就是逐一审阅unexpected values,补全cookbook
: 这个大小的数据用R没戏,用SAS在不知道这列到底改是啥数据类型的时候要反复调很多
: 次,而且读进去有时候也匪夷所思的,出现些更离奇的符号,*啊,~啊。现在解决的办
: 法就是分段读进R(大概10 million一段),然后做summary,然后人工总结,说实话满
: 累的。
: 而且这也不是个办法,之后merge阿什么的应该还是要SAS SQL,感觉还是要一次性全搞

P****D
发帖数: 11146
4
这种乱七八糟的数据谁也没办法,只能像adgang说的,先取出数据的一小部分,你基于
这个小样本把data cleaning程序写了,同时向大圣祷告,希望这个小样本里面已经包
含了所有需要处理的情况,最后你的程序apply到全部数据上就可以顺利运行。
祷告的时候,要手搭凉棚,另一手舞棍,口颂大圣之名。
P****D
发帖数: 11146
5
要是有pattern给你match,就不是问题了啊!

【在 A*******s 的大作中提到】
: read it as text strings. then use some regular expression to do pattern
: matching.

l*******s
发帖数: 1258
6
一行行读进内存清理数据
多大数据都不怕
q***m
发帖数: 9
7
用awk之类的处理工具,把数据分成很多小段,然后每个小段调用R或者SAS来过滤掉坏
数据,然后用1 2行shell代码把数据集合到一起,就好了。
D*********2
发帖数: 535
8
还是你最懂我。

【在 P****D 的大作中提到】
: 这种乱七八糟的数据谁也没办法,只能像adgang说的,先取出数据的一小部分,你基于
: 这个小样本把data cleaning程序写了,同时向大圣祷告,希望这个小样本里面已经包
: 含了所有需要处理的情况,最后你的程序apply到全部数据上就可以顺利运行。
: 祷告的时候,要手搭凉棚,另一手舞棍,口颂大圣之名。

D*********2
发帖数: 535
9
zkss?

【在 l*******s 的大作中提到】
: 一行行读进内存清理数据
: 多大数据都不怕

l*******s
发帖数: 1258
10


【在 D*********2 的大作中提到】
: zkss?
相关主题
谁来说说Travelers R&D intern的技术面?问个SAS数据处理的问题
[R求问]如何用ANOVA处理unbalanced datahealthcare 行业工作怎么样?
请问有人知道Strata Decision Technology 么?用SAS如何管理large datset,存储,读取,高效的数据处理?
进入Statistics版参与讨论
D*********2
发帖数: 535
11
恩,现在就用的这种分段法。

【在 q***m 的大作中提到】
: 用awk之类的处理工具,把数据分成很多小段,然后每个小段调用R或者SAS来过滤掉坏
: 数据,然后用1 2行shell代码把数据集合到一起,就好了。

D*********2
发帖数: 535
12
展开说说~ 谢谢

【在 l*******s 的大作中提到】
: ?
a****g
发帖数: 8131
13
我的方案得到pharmd的首肯,实在太荣幸了
今晚估计得高兴得睡不着了

【在 P****D 的大作中提到】
: 这种乱七八糟的数据谁也没办法,只能像adgang说的,先取出数据的一小部分,你基于
: 这个小样本把data cleaning程序写了,同时向大圣祷告,希望这个小样本里面已经包
: 含了所有需要处理的情况,最后你的程序apply到全部数据上就可以顺利运行。
: 祷告的时候,要手搭凉棚,另一手舞棍,口颂大圣之名。

A*******s
发帖数: 3942
14
Text cleansing本来就是得自己动手的脏活。

【在 P****D 的大作中提到】
: 要是有pattern给你match,就不是问题了啊!
c**d
发帖数: 104
15
其实楼主的问题是3个问题。我比较赞同Actuaries (striving)说的。
第一个是读数据的问题,比如某个变量是text包括一些特殊的符号会导致位置读不对。
我一般都是读成一个text string。在这一步,因为变量是用‘,’分开的。你很容易
发现patterns,把它们分配到正确的变量。可能一些变量要分段读,比如我们经常遇到
长字符特殊的符号的medical or medication history。你可以考虑subset to find
patterns。
下一步是去解决到底改是啥数据类型,for each string, you create an indicator
to determine 3 cases: whole letter, whole digital, or mixed. then proc freq.
then data quality.
q***m
发帖数: 9
16
我的感觉是, 如果你是做实际的工程项目,最好不要用采样的方法来测试,而是把数
据化作很多小块,一个一个测试,发现哪个数据块有错就可以直接报错,然后做对应的
处理。 采样的话,是没办法保证能够找到所有的outliers的, 所以说并不是一种完全
稳健的方案
D*********2
发帖数: 535
17
不好意思啊,不是特别明白,你是说先全部Char读入?然后对每一列的每个数做标记,
proc freq每列?那得多久啊。。。

freq.

【在 c**d 的大作中提到】
: 其实楼主的问题是3个问题。我比较赞同Actuaries (striving)说的。
: 第一个是读数据的问题,比如某个变量是text包括一些特殊的符号会导致位置读不对。
: 我一般都是读成一个text string。在这一步,因为变量是用‘,’分开的。你很容易
: 发现patterns,把它们分配到正确的变量。可能一些变量要分段读,比如我们经常遇到
: 长字符特殊的符号的medical or medication history。你可以考虑subset to find
: patterns。
: 下一步是去解决到底改是啥数据类型,for each string, you create an indicator
: to determine 3 cases: whole letter, whole digital, or mixed. then proc freq.
: then data quality.

v*******e
发帖数: 11604
18
我有处理大数据的经验,你这个,最好的解决办法是python和R结合起来用。
先用python,把这个数组分成70个数组,(或者35个,反正是分成R能够比较快读进来
的大小)。分不是按行分,而是按列分。R读进来后,用table(data$某列)命令,找出
各种非正规的coding,一个个处理好,写进你的cook book。
l******h
发帖数: 855
19
你有70个columns, 其实真的还好了,要是知道每个column应该是什么内容的话,可以
在sas中define一下,首先过滤掉一批坏数据呀。
l*******s
发帖数: 1258
20
这玩意没有简易方法,其实该任务主要是两部分:如何处理大数据;如何clean data
处理大数据,考虑到内存限制,不能全部读入,只能一行行读入
clean data,也只能人工观察找pattern,然后用regex处理。或者上classifier,不过
就麻烦些。
随便用什么java python都行

【在 D*********2 的大作中提到】
: 展开说说~ 谢谢
相关主题
关于在银行做risk analysisSAS book问题
SAS数据处理问题:让缺失数据自动采用上个数据值求救, 一个SAS 数据处理问题
ask SAS code询问一个SAS数据处理问题
进入Statistics版参与讨论
D*********2
发帖数: 535
21
python要用啥package不

【在 v*******e 的大作中提到】
: 我有处理大数据的经验,你这个,最好的解决办法是python和R结合起来用。
: 先用python,把这个数组分成70个数组,(或者35个,反正是分成R能够比较快读进来
: 的大小)。分不是按行分,而是按列分。R读进来后,用table(data$某列)命令,找出
: 各种非正规的coding,一个个处理好,写进你的cook book。

H*H
发帖数: 472
22
要是我就多上几条内存,直接把数据读进去。你的数据我估计就10来G大小吧?我经常
都要读几十G数据到R里处理,内存足够的话毫无压力。分段处理然后又合并,太耗时间
了。。。。
D******n
发帖数: 2836
23
cookbook(what on earth is this? data dictionary?) gives u the pattern for
each field
u only need to find the mismatches.
Use perl with regex, piece of cake.

【在 P****D 的大作中提到】
: 要是有pattern给你match,就不是问题了啊!
w********m
发帖数: 1137
24
可以试试熊猫pandas

【在 D*********2 的大作中提到】
: python要用啥package不
v*******e
发帖数: 11604
25

这个是逐行处理的,什么package都不需要。你甚至不需要用python,你可以用linux的
cut命令。就是把这个大数组安列分解成R可以处理的小数组。教你用regex(regular
expression)的都不是好人,你不知道一个列里面都有哪些奇怪coding的话,是没办法
写出regular expression来的。必须先看这些coding的样子,这个R的table()命令最合
适了。

【在 D*********2 的大作中提到】
: python要用啥package不
q**q
发帖数: 266
26
项目是做什么的呢?做预测模型?

【在 D*********2 的大作中提到】
: 最近接一新project,40+ million line,大概70个左右variable,数据给的是.csv格
: 式。问题是cookbook做的很差,很多unexpected value,比如一variable cookbook上
: 写是0-9 coding,结果什么负数啊,感叹号啊,有时missing value还用date表示。非
: 常不能理喻。
: 所以第一个task就是逐一审阅unexpected values,补全cookbook
: 这个大小的数据用R没戏,用SAS在不知道这列到底改是啥数据类型的时候要反复调很多
: 次,而且读进去有时候也匪夷所思的,出现些更离奇的符号,*啊,~啊。现在解决的办
: 法就是分段读进R(大概10 million一段),然后做summary,然后人工总结,说实话满
: 累的。
: 而且这也不是个办法,之后merge阿什么的应该还是要SAS SQL,感觉还是要一次性全搞

m****n
发帖数: 3016
27
随便说下。能用 regular expression 写个可能的数据形式,然后再CLEAN么?
B***i
发帖数: 724
28
40m + 就叫大数据啦?
D*********2
发帖数: 535
29
非常传统的epidemiology project,找association,做hypothesis testing的。

【在 q**q 的大作中提到】
: 项目是做什么的呢?做预测模型?
D*********2
发帖数: 535
30
恩,10+G。 穷衙门,哪来什么内存条,这已经是在我们服务器上跑了。

【在 H*H 的大作中提到】
: 要是我就多上几条内存,直接把数据读进去。你的数据我估计就10来G大小吧?我经常
: 都要读几十G数据到R里处理,内存足够的话毫无压力。分段处理然后又合并,太耗时间
: 了。。。。

相关主题
关于merge data的问题!!!求助,压力好大
请教 long form 的数据处理问题,先谢谢了!SAS regex questions
问一个partial derivative 的问题建议检查硬盘Re: HELP with SAS!
进入Statistics版参与讨论
D*********2
发帖数: 535
31
我研究研究,关键区别就是按列读是吧。这个是比按行读、先拆再并更符合我需要。谢
谢。

【在 v*******e 的大作中提到】
:
: 这个是逐行处理的,什么package都不需要。你甚至不需要用python,你可以用linux的
: cut命令。就是把这个大数组安列分解成R可以处理的小数组。教你用regex(regular
: expression)的都不是好人,你不知道一个列里面都有哪些奇怪coding的话,是没办法
: 写出regular expression来的。必须先看这些coding的样子,这个R的table()命令最合
: 适了。

D*********2
发帖数: 535
32
管理员不给装!!!

【在 w********m 的大作中提到】
: 可以试试熊猫pandas
1 (共1页)
进入Statistics版参与讨论
相关主题
求救, 一个SAS 数据处理问题[合集] 生物统计硕士找工作,药厂SAS Programmer vs非药厂Biostatis
询问一个SAS数据处理问题谁来说说Travelers R&D intern的技术面?
关于merge data的问题!!![R求问]如何用ANOVA处理unbalanced data
请教 long form 的数据处理问题,先谢谢了!请问有人知道Strata Decision Technology 么?
问一个partial derivative 的问题问个SAS数据处理的问题
求助,压力好大healthcare 行业工作怎么样?
SAS regex questions用SAS如何管理large datset,存储,读取,高效的数据处理?
建议检查硬盘Re: HELP with SAS!关于在银行做risk analysis
相关话题的讨论汇总
话题: sas话题: 数据话题: cookbook话题: python话题: 处理