Redian新闻
>
一个搞统计的对C#的第一印象
avatar
一个搞统计的对C#的第一印象# Programming - 葵花宝典
C*n
1
这个,刚刚喝了口水,我们继续
那么这个等响曲线会影响我们在hifi生活的那些东东呢?
基本上每个方面
可以说,几乎一半关于hifi调音的玄学,都是围绕着这个等响曲线来的,
最主要的几点呢?
1. 音量决定还原, 换句话说,你必须用原来的录音的音量才能听到一样的等响曲线。
具体说来,你想听到跟交响乐现场一样的效果,你需要在家里制造出大约同样的升压,
多少呢?110dB. 摇滚之类的现场呢呢,由于含部分噪声,这个声压比交响乐还高,
120dB.
所以不要嘲笑街上老黑把喇叭开的震天响,人家才是真的在听hifi
一般的人除非有毛病,否则在家里喇叭绝对不会开到这种声压的,这就是为
啥即使你在家里器材越好,你也感觉不如现场的原因
另一种办法是不用喇叭,用啥呢?耳机!耳机是可以轻易做出超大声压的,俺
前天随手测了一下俺的笔记本最大音量直推d7000, 放命运,最大声压160dB,不开玩笑
的说,这个声压持续时间长一点可以死人了。 不管咋样,在家里想听现场的效果,不
考虑音场的问题,耳机是要比箱子容易些
但即使是耳机,也没有几个人愿意拿自己的耳朵开玩笑的,即使是摇滚那
120dB,听一小时左右也会严重损伤听力,这就是为啥有些人演唱会归来,耳朵好几
天歇不过来
那么一般的人怎么听类似现场的效果呢? 很简单, 因为音量下降,低音的响
度是受损最厉害的,所以一般的喇叭或者耳机,为了低音量聆听,都会特意的加强低音,
尤其是如果受众听得是摇滚rap之流的低音较强的音乐的话
所以啊,不要嘲笑monster Dr. DRE. 人家是真的懂声学的
这也导致一个结论,每一个喇叭/耳机都有一个最合适的声压,低于或者高于
这个声压太多,你听到的频率分布就变了
有些人很喜欢把音量打得很小,然后宣称细节xxoo之类的,俺只能说那是神仙
耳朵,实际上没有一定的声压,大量的细节你是听不到的
一般用耳机听音乐,基础音量放在70-80dB之间是合适的,不会损失动态,一
般也不会损伤耳朵
写了这么老长,只写了第一点,我就把第二点是啥忘了
avatar
h*1
2
本人今年6月从纽约州立大学布法罗分校环境工程工程硕士毕业,在纽约
州交通部做监工至12月底,现在住在马里兰州,想寻找一份全职的水资源/环境工程相
关工作。本人有一定的环境工程工作经验及相关证书,可随时准备入职。
证书:
FE/ LEED GA/ OSHA 40
工作经历:
①纽约州交通部监工
②中国昆山意瑞特环保公司实习 助理设计师
会用的软件:
Microstation,AutoCAD,Hydraulic Toolbox,ArcGIS,Microsoft Office.
欢迎发邮件或致电,邮箱是:[email protected] 电话是:7168174316
avatar
n*g
3
☆─────────────────────────────────────☆
playadelrey (playadelrey) 于 (Sat Apr 25 22:47:02 2009) 提到:
avatar
o*1
4
加上不时添点儿佐料
avatar
e*5
5
她在等待结束
我在这里继续生活
聚会还在进行
我在人群中穿梭
她数着时钟的回音
躺在那个孤独的角落
周围的欢声笑语
把我淹没
她却挣扎在
命运的漩涡
快乐与悲伤的距离
是不是虚幻与现实之间的交错
我走不出的是心灵的困惑
她被禁锢在肉体的折磨
如果这些都是安排
我想懂得这背后的幽默
生与死的遥遥相对
到底谁是谁的解脱
avatar
D*u
6
我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
一些指点。
先说一句,我觉得C#对于初学者还是挺freindly的。
我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
parsing data with C#。
当时一听我的第一反应就是这TM也太难了。
我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
table,勿论再去做对Col和Row做运算。
然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read
/write files,C#比C++,和java的语句要简单直观很多,这对于一个经常用sas的人来
说是一件很幸福的事情。还有就是,我很喜欢C# 的static void Main,我记得印象中C
++ 老是int main 总让我觉得怪怪的,呵呵,我知道这个比较很弱智,可是实在认识有
限。
可是现在问题来了,
SAS,R或者python都是先create一个data table,然后读入memory中运算,然后output
到一个文件或者data table。
而在C#是怎样在一个csv table中 select 几个column或者row 然后做运算在output到
一个table中呢?
我看到了一个foreach function,但是这个跟sas和R中的data matrix computation的思
维方式差别挺大的。
唉,发现还是离solution很遥远
胡乱码了一通,全当一个菜鸟的呓语,不过还要强调一下,C# 的 files I/O真的不错。
avatar
l*a
7
en, 看来我要耳机+低音炮了

【在 C********n 的大作中提到】
: 这个,刚刚喝了口水,我们继续
: 那么这个等响曲线会影响我们在hifi生活的那些东东呢?
: 基本上每个方面
: 可以说,几乎一半关于hifi调音的玄学,都是围绕着这个等响曲线来的,
: 最主要的几点呢?
: 1. 音量决定还原, 换句话说,你必须用原来的录音的音量才能听到一样的等响曲线。
: 具体说来,你想听到跟交响乐现场一样的效果,你需要在家里制造出大约同样的升压,
: 多少呢?110dB. 摇滚之类的现场呢呢,由于含部分噪声,这个声压比交响乐还高,
: 120dB.
: 所以不要嘲笑街上老黑把喇叭开的震天响,人家才是真的在听hifi

avatar
s*l
8
好好多陪陪她

【在 e*****5 的大作中提到】
: 她在等待结束
: 我在这里继续生活
: 聚会还在进行
: 我在人群中穿梭
: 她数着时钟的回音
: 躺在那个孤独的角落
: 周围的欢声笑语
: 把我淹没
: 她却挣扎在
: 命运的漩涡

avatar
b*y
9
string.split()
avatar
p*m
10
小人走了,你来发功。
avatar
w*a
11
bless! 祝我们有勇气面对自己和身边人的终点……

【在 e*****5 的大作中提到】
: 她在等待结束
: 我在这里继续生活
: 聚会还在进行
: 我在人群中穿梭
: 她数着时钟的回音
: 躺在那个孤独的角落
: 周围的欢声笑语
: 把我淹没
: 她却挣扎在
: 命运的漩涡

avatar
c*e
12
果然是新手。c#和java是一个级别的,说它简单。。。

read

【在 D**u 的大作中提到】
: 我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
: 一些指点。
: 先说一句,我觉得C#对于初学者还是挺freindly的。
: 我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
: parsing data with C#。
: 当时一听我的第一反应就是这TM也太难了。
: 我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
: 从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
: table,勿论再去做对Col和Row做运算。
: 然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read

avatar
a9
13
dataset

read
中C
output
错。

【在 D**u 的大作中提到】
: 我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
: 一些指点。
: 先说一句,我觉得C#对于初学者还是挺freindly的。
: 我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
: parsing data with C#。
: 当时一听我的第一反应就是这TM也太难了。
: 我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
: 从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
: table,勿论再去做对Col和Row做运算。
: 然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read

avatar
D*u
14
dataset is great, 这个是把data read in memory么,如果超过内存大小的csv table
怎么办,谢谢?

【在 a9 的大作中提到】
: dataset
:
: read
: 中C
: output
: 错。

avatar
D*u
15
IDataReader!
read and process data line by line 这个可以算是 Row computaion而且不受memory
size限制了。
hoho,以后small table 用dataset, large table用IDataReader。
avatar
s*n
16
linq is your friend. google linq csv.

read

【在 D**u 的大作中提到】
: 我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
: 一些指点。
: 先说一句,我觉得C#对于初学者还是挺freindly的。
: 我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
: parsing data with C#。
: 当时一听我的第一反应就是这TM也太难了。
: 我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
: 从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
: table,勿论再去做对Col和Row做运算。
: 然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read

avatar
D*u
17
This is getting more and more interesting!
With Linq, now I can do column computation in CSV tables.

【在 s*****n 的大作中提到】
: linq is your friend. google linq csv.
:
: read

avatar
z*e
20
只要你花钱了
没有什么软件是不friendly的
avatar
z*e
21
另外,sas的程序可以直接转成pure java代码
有专门的公司在做这事,花点钱就是了
如果你们的系统很稳定的话,直接转成java代码后就可以省下大笔的license fee
当然如果你们的系统不稳定的话,需要维护改造倒腾的话
那还是交钱吧
avatar
e*i
22
search "parsing csv file in C#". There are lots of sample codes, even some
small useful library for this purpose. C# is truly a good, high-level,
application development language, not just for beginners.
avatar
k*g
23
use linq . if u have terabytes data, then k is much much faster. only take
milliseconds to do row or column computation.

read

【在 D**u 的大作中提到】
: 我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
: 一些指点。
: 先说一句,我觉得C#对于初学者还是挺freindly的。
: 我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
: parsing data with C#。
: 当时一听我的第一反应就是这TM也太难了。
: 我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
: 从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
: table,勿论再去做对Col和Row做运算。
: 然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read

avatar
T*U
24
linq require 3.5 +, 4.0 u can do parallel linq.

take

【在 k***g 的大作中提到】
: use linq . if u have terabytes data, then k is much much faster. only take
: milliseconds to do row or column computation.
:
: read

avatar
D*u
25
what is k?

take

【在 k***g 的大作中提到】
: use linq . if u have terabytes data, then k is much much faster. only take
: milliseconds to do row or column computation.
:
: read

avatar
d*1
26
linq, lambda还有新的4.5的async语法糖才是统计和数据筛选的神器!
avatar
x*b
27
Python可以很简单地完成你说的这些task。为什么一定要C#?
avatar
H*g
28
能不用DATATABLE就别用,那个效率太低。
试试看linq asparallel

read

【在 D**u 的大作中提到】
: 我是统计出身,语言的知识很有限,仅仅从我的个人感受,分享一些心得,并希望得到
: 一些指点。
: 先说一句,我觉得C#对于初学者还是挺freindly的。
: 我是做统计模型的,平常都是用SAS,偶尔用用R和python。但是最近一个客户需要我们
: parsing data with C#。
: 当时一听我的第一反应就是这TM也太难了。
: 我对C++和java的认识只停留于做一个students record table,算一个Fabinocci数。
: 从来没用过C#,更不知道怎么用C++,java或者C#去subset一个100GB的 CSV或是txt
: table,勿论再去做对Col和Row做运算。
: 然后这两天我就开始在youtube上学一些C#的语句,第一感觉对于简单的I/O,包括read

avatar
H*g
29
python能比C#需要的代码还少么,呵呵。

【在 x*****b 的大作中提到】
: Python可以很简单地完成你说的这些task。为什么一定要C#?
avatar
r*n
30
python 处理这种事情很擅长,代码会少,关键是易学易用

【在 H*******g 的大作中提到】
: python能比C#需要的代码还少么,呵呵。
avatar
r*l
31
C# 处理统计问题?
有点意思!
avatar
D*u
32
虽然client要C#, 但确实可以先用python处理data再input到C#中去。
我想我们决定用C#,一是client的要求,二是C#可能比python更容易hide scource
code( obfuscator),让reengineer source code 更难一点(我相信所有的code 都
是可以reengineer的)
avatar
d*1
33
BasisComponentDict =
(from a in BasisComponentValues
where CheckMonth(a.StartMonth, a.Month, a.EndMonth)
group a by a.Key into g
select new { Key = g.Key, Sum = g.Sum(o => o.Value) })
.ToDictionary(gdc => gdc.Key.ToUpper(), gdc => gdc.Sum);
这个是工作里面做字典的一个例子,挺好用的。
avatar
D*u
34
这个例子看起来很fancy啊,查了一下,Enumerable.ToDictionary
发现Enumerable Class有很多可以利用的



【在 d**********1 的大作中提到】
: BasisComponentDict =
: (from a in BasisComponentValues
: where CheckMonth(a.StartMonth, a.Month, a.EndMonth)
: group a by a.Key into g
: select new { Key = g.Key, Sum = g.Sum(o => o.Value) })
: .ToDictionary(gdc => gdc.Key.ToUpper(), gdc => gdc.Sum);
: 这个是工作里面做字典的一个例子,挺好用的。

avatar
c*3
35
# 怎么读,谢谢..
avatar
d*x
36
夏普

【在 c**********3 的大作中提到】
: # 怎么读,谢谢..
avatar
c*3
37
多谢,赠包子一枚

【在 d**********x 的大作中提到】
: 夏普
avatar
k*g
38
处理百亿千亿行数据使用的语言和数据库,主要用在高频交易上,k 语言很简洁,譬如
列出从1 到 N 之间所有的 prime number 只需要: (!N)@&{&/x!/:2_!x}'!N 就可以了

【在 D**u 的大作中提到】
: what is k?
:
: take

avatar
G*l
39
这一堆@@##$$!!的是啥,比perl还夸张啊。



【在 k***g 的大作中提到】
: 处理百亿千亿行数据使用的语言和数据库,主要用在高频交易上,k 语言很简洁,譬如
: 列出从1 到 N 之间所有的 prime number 只需要: (!N)@&{&/x!/:2_!x}'!N 就可以了

avatar
z*e
40
没说的,学术版讨论



【在 k***g 的大作中提到】
: 处理百亿千亿行数据使用的语言和数据库,主要用在高频交易上,k 语言很简洁,譬如
: 列出从1 到 N 之间所有的 prime number 只需要: (!N)@&{&/x!/:2_!x}'!N 就可以了

avatar
n*t
41
其实K很好读。比大部分程序都好读。
这东西有点像现代汉语,语法其实简单。但是刚开始学比较难。背的多一点。
所有的K都是自右向左读
!N就是生成0.....N-1的向量。
然后{&/x!/:2_!x} 是一个函数,'是adverb,就是把函数apply到向量的每一个element
上面。
2_!x 就是0..N-1去掉前面两个元素,就是2....N-1
/: 又是adverb叫做each right,然后!作为binary operator就是取余。这样
x!/:2_!x 就是用x 对于每一个2...N-1的数做取余。
然后 &作为binary operator是min(x,y)的意思,/是另外一一个adverb就是迭代
所以&/apply到一个vector上就是取最小值。所以如果x是质数这个最小值是1,
否则是0.
&的意思是take,就是返回为1的的[email protected]是取向量a里下标为i那些元素构成的
向量。

譬如

【在 G***l 的大作中提到】
: 这一堆@@##$$!!的是啥,比perl还夸张啊。
:
: 了

avatar
k*g
42
k 应该算是文言文,q 才算白话,上面的那段程序用 q 按字面重写一遍:
(til N)[ where 1 = {and over x mod 2_til x} each til N]
符号的 verb 和 adverb 都改成单词了,意思清点儿了,如果把 and 换成 min,用 su
bset 取代 drop(_)就更通俗了;
不过一般写 code 大多数都是 k 和 q 混搭,算是半文半白吧,譬如同样的程序:
where 1 = {&/[x mod 2_til x]} each til 100
用!来表示 mod,只能用在 k2/k3,现在 k4/q 不让这么用了,用!表示 less than,必须
在纯 k code 下才能用, q console 里不让直接用(必须进入 k 模式才行)

element

【在 n******t 的大作中提到】
: 其实K很好读。比大部分程序都好读。
: 这东西有点像现代汉语,语法其实简单。但是刚开始学比较难。背的多一点。
: 所有的K都是自右向左读
: !N就是生成0.....N-1的向量。
: 然后{&/x!/:2_!x} 是一个函数,'是adverb,就是把函数apply到向量的每一个element
: 上面。
: 2_!x 就是0..N-1去掉前面两个元素,就是2....N-1
: /: 又是adverb叫做each right,然后!作为binary operator就是取余。这样
: x!/:2_!x 就是用x 对于每一个2...N-1的数做取余。
: 然后 &作为binary operator是min(x,y)的意思,/是另外一一个adverb就是迭代

avatar
r*g
43
有没有k/q 相对其他语言的benchmark?

su
必须

【在 k***g 的大作中提到】
: k 应该算是文言文,q 才算白话,上面的那段程序用 q 按字面重写一遍:
: (til N)[ where 1 = {and over x mod 2_til x} each til N]
: 符号的 verb 和 adverb 都改成单词了,意思清点儿了,如果把 and 换成 min,用 su
: bset 取代 drop(_)就更通俗了;
: 不过一般写 code 大多数都是 k 和 q 混搭,算是半文半白吧,譬如同样的程序:
: where 1 = {&/[x mod 2_til x]} each til 100
: 用!来表示 mod,只能用在 k2/k3,现在 k4/q 不让这么用了,用!表示 less than,必须
: 在纯 k code 下才能用, q console 里不让直接用(必须进入 k 模式才行)
:
: element

avatar
n*t
44
但是其实没有太大的差别。overload这个东西对K来说是家常便饭的事情。
但是我个人感觉熟悉之后,K比q看起来快。

su
必须

【在 k***g 的大作中提到】
: k 应该算是文言文,q 才算白话,上面的那段程序用 q 按字面重写一遍:
: (til N)[ where 1 = {and over x mod 2_til x} each til N]
: 符号的 verb 和 adverb 都改成单词了,意思清点儿了,如果把 and 换成 min,用 su
: bset 取代 drop(_)就更通俗了;
: 不过一般写 code 大多数都是 k 和 q 混搭,算是半文半白吧,譬如同样的程序:
: where 1 = {&/[x mod 2_til x]} each til 100
: 用!来表示 mod,只能用在 k2/k3,现在 k4/q 不让这么用了,用!表示 less than,必须
: 在纯 k code 下才能用, q console 里不让直接用(必须进入 k 模式才行)
:
: element

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。