我经常发现自己的文件每行有一个数字。我最终将其导入excel以查看诸如中位数,标准差等内容。
Linux中是否有命令行实用程序可以执行相同的操作?我通常需要找到平均值,中位数,最小值,最大值和标准差。
使用R可以轻而易举。对于如下所示的文件:
1
2
3
4
5
6
7
8
9
10
用这个:
R -q -e "x <- read.csv('nums.txt', header = F); summary(x); sd(x[ , 1])"
为了得到这个:
V1
Min. : 1.00
1st Qu.: 3.25
Median : 5.50
Mean : 5.50
3rd Qu.: 7.75
Max. :10.00
[1] 3.02765
-q
标志squelches的r启动许可和帮助输出-e
标志告诉R您将要从终端传递一个表达式x``data.frame
基本上是一张桌子。它是一个结构,可容纳多个向量/数据列,如果您仅读取单个向量,则该结构会有些特殊。这会影响您可以使用哪些功能。summary()
,自然可以容纳data.frames
。如果x
有多个字段,summary()
则将为每个字段提供上述描述性统计信息。sd()
一次只能使用一个向量,这就是为什么我x
为该命令建立索引(x[ , 1]
返回的第一列x
)的原因。您可以apply(x, MARGIN = 2, FUN = sd)
用来获取所有列的SD。我决定回到编程(特别是C),为此我开始开发命令行解析器。最终,目标是将其变成一个简单的类,我可以在未来的一些项目中导入。 这个测试程序只是简单地列出它收到的参数数量,然后打印出来,每行一个,然后退出。 这是我的代码: 以下是终端中发生的情况: 为什么它不按它应该的那样打印论点?它清楚地识别论点,那么问题是什么?我肯定我在这里错过了一些明显的东西。
前面章节介绍了如何利用 useradd 命令添加用户,但如果不小心添错用户信息,后期如何修改呢? 办法有两个,一个是使用 Vim 文本编辑器手动修改涉及用户信息的相关文件(/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow),另一个方法就是使用本节介绍了 usermod 命令,该命令专门用于修改用户信息。 这里一定要分清 useradd 命令和 user
问题内容: 如何捕捉到不同的信号,如和斯威夫特是否正确?例如,当人们通过按- 停止我的脚本时,我想在终止脚本之前进行一些清理。 问题答案: 调度源 可用于监视UNIX信号。 这是一个简单的示例,《 并发编程指南 》中“监视信号”部分中C代码的Swift 3转换 。 请注意,这需要一个活动的GCD事件循环,例如 在命令行程序中。
问题内容: 我正在尝试在Java程序中打印我的mac的[edit:Apple computer]序列号。我熟悉Unix命令 在终端中完成此任务。 当我尝试 我的序列号未打印。而是打印: 我认为问题是这并不意味着要使用整个命令字符串。Java中是否有类似于shell = Truepython中的参数的东西,可以让我传递整个命令字符串? 问题答案: 我看到两种可能性: 解析使用Scanner的输出。
我正在使用DHL Shipping(XML)API请求DHL发货并自动打印响应的发货标签。 系统是这样工作的: DHL响应XML包含base64编码的pdf,其中包含: 第1页。装运标签(打印在包装上的标签上) 第2页。存档文件(需要单独打印并交给快递员) 为了分离这两个PDF,我首先解码base64,然后使用PDFBox命令行工具执行PDFSplit,最后在各自的打印机上打印各自的文档: 问题是
问题内容: 我的问题是,我正在通过终端运行一些adb命令。我写了一个工具;这将使事情变得容易。回到问题所在,为了使命令运行,我必须在终端上输入“密码”。那么,我该如何做才能使“密码”部分出现在JOptionPane.showInputDialog框上? 这是我到目前为止的内容: 问题答案: 您可以“读取”过程输入,并在“检测到”密码提示时显示,并要求用户输入密码。 在开始该过程之前,您“可以”提示