您当前的位置:网站首页>李逵,乐基儿-隐形眼镜,丹阳眼镜城,品质评测

李逵,乐基儿-隐形眼镜,丹阳眼镜城,品质评测

2019-07-10 11:22:29 投稿作者:admin 围观人数:252 评论人数:0次
更多精彩,请点击上方蓝字重视咱们!

datamash 是什么

在官网 中,用了下面一句话来介绍 datamash。

GNU datamash is a command-line program which performs basic numeric, textual and statistical operations on input textual data files.

datamash 作为一个指令行程序能够对文本文件进行数字和文本相关的根本核算操作(虽然根本可是一切的操作都满足常用高频)。

运用前首要进行装置,能够经过 sudo apt-get install datamash 来进行装置,但apt库里软件版别有些老旧,仅为1.0.7。

或许经过源码来装置最新版别,这儿选用第二种方法。

wget https://ftp.gnu.org/gnu/datamash/datamash-1.4.tar.gz
tar -xzf datamash-1.4.tar.gz
cd datamash-1.4
./configure
make
make check
sudo make install

调用格局与参数

datamash李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测 的根本调用格局如下:

datamash [option]… o强暴小说p1 column1  [op2 column2 …]

上面的内容转换为描绘言语便是:在 option 的参数下,对 column1 列进行 op1 操作,对 column2 列进行 op2 操作。假如运用 --group 参数,一切的 operation 都将会分组进行;假如没有运用 --group,一切的 operation 会对一切的值进行。需求阐明的是这儿的 column1 能够是表明第几列的数字,当运用 -H 或许 --header-in 时能够是所选字段的称号,能够运用列名,当 operation 要求输入成对数据的时分运用: 衔接,比方 spearson 5:6

首要 operation

不同版别支撑的参数不同,以下参数适用于 v1.4 版别。在分组核算相关的参数中,上呼吸道感染吃什么药p/s 前缀别离代表 population 或许 sample。一般来说,sample 对应的核算等同于 R 中对应函数,例如 sstdev 和 sd() 是共同的。

Primary operations:

primary operations 决议了文件将被怎么处理,假如 primary operatino 没有设置,整个文件将会被逐行处理(针对 per-line operation)或许将一切行依照一组进行处理。


操作示例

运用软件自带的测试数据集 scores_h.txt,有三列,别离是学生名字科目和成果。

cat /usr/local/share/datamash/examples/scores_h.txt |head
Name    Major   Score
Shawn   Arts    65
Marques Arts    58
Fernando        Arts    78
Paul    Arts    63
Walter  Arts    75
Derek   Arts    60
Nathaniel       Arts    88
Tyreque Arts    74
Trevon  Arts    74

文本根本操作

#检查队伍完整性
$ cat scores_h.txt |datamash check

84 lines, 3 fields

# 交流列次序
$ cat scores_h.txt |datamash reverse |head -n5

Score   Major   Name
65      Arts    Shawn
58      Arts    Marques
78    李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测&nbs杨克强p; Arts    Fernando
63      Arts    Paul

# 依据前两列构建透视表,且显现分数
$ cat scores_h.txt |datamash --header-in crosstab 1,2 unique 3 |head

# 由于这个文件有 header 所以需求运用 --header-in 参数
    Arts    Businessjyp        Engineering     Health-Medicine Life-Sciences   Social-Sciences
Aaron   N/A     83      N/A     N/A     58      N/A
Allen   N/A    &nbs天天评书网p;N/A     N/A     N/A     50      N/A
Andre   N/A     N/A     N/A     72      N/A     N/A
Angel   N/A     N/A     N/A     100    &nbs李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测p;N/A     N/A
Anthony N/A     N/A     N/A     N/A     32      N/A
Antonio N/A     N/A     88      N/A     N/A     N/A
Austin  N/A     N/A     N/A    &李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测nbsp;N/A     91      N/A
Aver女生的相片y   N/A     N/A     51      N/A     N/A    技校门; N/A
Brandon N/A     N/A     N/A     N/A     72      N/A

分组核算操作

核算每门课的选课人数

$ datamash --header-in --sort groupby 2 count 2 < scores_h.txt
Arts &灿烈nbsp;  19
Business  &nb机场塔台模仿2012sp;     11
Engineering     13
Health-Medicine 13
Li李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测fe-Sciences   12
Social-Sciences 15

检查每门课程的最高分和最低分,在这儿运用 --header-out 输出时会主动增加列名

$ datamash --header-in --header-out --sort groupby 招魂22  min 3 max 3 < scores_h.txt
GroupBy(Major)  min(Score)      max(Score)
Arts    46      88
Business        79      94
Engineering     39      99
Health-Medicine 72   &面积公式nbsp;  100
Life-Sciences   14      91
Social-Sciences 27      90

由于这是有列名的输入文件,运用 --header-in 参数后能够运用列名来进行核算。核算每门课程的平局分和标准差,在显现的成果中要求只保存两位小数即可。

$ datamash --header-in --header-out --sort -R 2 \
groupby 2  mean Score pstdev Score < scores_h.txt

GroupBy(Major)  mean(Score)     pstdev(Score)
Arts    68.95   10.14
Business        87.36   4.94
Engineering     66.54   19.10
Health-Medicine 90.62   8.86
Life-Sciences   55.33   19.73
Social-Sciences 60.27   16.64

假如想要对文本中的数字进行简化,能够运用如下几个指令:

$ (echo num; seq -1.25 0.25 1.25) \
|datamash --full -H round 1 ceil 1 floor 1 trunc 1 frac 1

num     round(num)      ceil(num)       floor(num)      trunc(num)      frac(num)
-1.25   -1      -1      -2      -1      -0.25脚出汗
-1.00   -1      -1      -1      -1      0
-0.75   -1      0    全封闭晚年代步车   -1  &nbs冰点脱毛p;   0       -0.75
-0.50   -1      0       -1      0       -0.5
-0.25   0       0       -1      0       -0.25
0.00    0       李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测;0       0       0       0
0.25    0       1       0      &n一斤是多少克bsp;0       0.25
0.50   fczlm 1       1       0       0       李逵,乐基儿-隐形眼镜,丹阳眼镜城,质量评测;0.5
0.75    1       1       0       0       0.75
1.00    1       1       1       1       0
1.25    1       2       1       1       0.25

在实践的服务器办理中,或许1l等于多少斤需求核算一些体系用户信息。这些信息存放在 /etc/passwd 中,: 切割。这儿运用 login shells 进行分组,然后核算用户数。

$ cat /etc/passwd | datamash -t : --output-delimiter $'\t' --sort groupby 7 count 7

/bin/bash       10
/bin/false      22
/bin/sh 3
/bin/sync       1
/usr/sbin/nologin &nb缓慢咽炎吃什么药sp;     17

END

碧茂讲堂精彩课程引荐:

1.Cloudera数据剖析课;

2.Spark和Hadoop开发员训练;

3.大数据机器学习之引荐体系;

4.Python数据剖析与机器学习实战;

详情请重视咱们大众号:碧茂大数据-课程产品-碧茂讲堂

现在注册互动得海量学币,很多南瓜饼的做法精品课程免费送!


重视最新行业动态,

加群进行技术交流


the end
隐形眼镜,丹阳眼镜城,品质评测