我有非常大的基因型文件,基本上不能在R中打开,所以我试图使用linux命令行提取感兴趣的行和列.使用头部/尾部的行很简单,但我很难弄清楚如何处理列.
如果我尝试使用提取(例如)100-105个制表符或空格分隔列
cut -c100-105 myfile >outfile
Run Code Online (Sandbox Code Playgroud)
如果每列中有多个字符串,这显然不起作用.有没有办法用适当的参数修改cut,以便它提取列中的整个字符串,其中列被定义为空格或制表符(或任何其他字符)分隔?
我在目录中有几百个gpg加密文件,格式为filename.xyz.gpg,其中"xyz"是一些任意扩展名.我需要解密所有文件以生成filename.xyz解密,这样我就不必手动输入每个文件的密码.
我已尝试以下目录"测试":
for file in 'ls Testing'; do (echo <password>|gpg --passphrase-fd 0 -d $file
--output $file.decrypted);
Run Code Online (Sandbox Code Playgroud)
我结束了命令提示>,没有任何反应.
我的语法有什么问题?没有bash shell循环,有没有更有效的方法来做到这一点?
在下面的代码中,我构造了一个变量$ probe1,然后我想传递给bash脚本.我是下面的玩具示例,输出是空白的,即$ probe1无法识别os.system调用中的bash shell脚本.需要做什么?
for line1 in datfile:
datmat=datmat+[line1.rstrip('\n').split('\t')]
probe=datmat[i][0]
snp1=datmat[i][2]
probe1='permprobes'+probe+'pheno.pphe'
os.system('echo $probe1')
Run Code Online (Sandbox Code Playgroud) 有没有办法使用write()和write.table(),以便输出文件与工作目录不在同一个目录中?它尝试在文件名之前设置输出文件的路径,只是得到一条错误消息.
我尝试使用以下方法解密加密的 gpg 文件:
gpg -d <encrypted file> --output <outfile>
Run Code Online (Sandbox Code Playgroud)
并收到一条消息:usage: gpg [options] --decrypt [filename]
相反,如果我使用
gpg -d <encrypted file>
Run Code Online (Sandbox Code Playgroud)
文件被解密,但它被写入默认文件并显示在终端屏幕上。前者不是一个大问题,但后者(解密时显示在终端屏幕上)是一个真正的麻烦。如果有的话,可以采取什么措施?
如果我有一个包含数百个文件的目录,使用ls,ls-l或者dir给我一个对于命令终端屏幕来说太长的列表,那么我无法看到目录中的大多数文件.
我记得有一些争论ls允许人们以较短的增量滚动列表,但似乎无法找到它.
假设我有一个n行,m列矩阵A,我想根据某个特定行的排序重新排序m中的每一列.
例如,如果我接受顺序(A [,k]),那就给出了k列中元素的数字或字母顺序.我现在想要根据这些排名对矩阵A中的每一列进行排序,以便每行中的元素1 ... n被排序以对应于列k中的元素1 ... n(按等级).是否有一种简单的方法可以在不循环所有列的情况下执行此操作?
delpython中的语句应用于列表时,会做一些非常奇怪的事情.它不仅会删除相关列表中的条目,还会"回溯"以删除变量派生自的任何列表中的相同元素.
例如:
>>> x
[1, 2, 3, 4, 5]
>>> z=x
>>> del z[1]
>>> z
[1, 3, 4, 5]
>>> x
[1, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
换句话说,即使我应用删除z,删除也适用于x.这种"回溯"没有提出任何其他命令或功能,例如
>>> x=[1,2,3,4,5]
>>> z=x
>>> z+[6]
[1, 2, 3, 4, 5, 6]
>>> x
[1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
将add函数应用于z使x不受影响,因为它应该是.
这让我感到各种令人头疼的问题,我正在处理删除'NA'脚本.你知道del声明发生了什么吗?如何解决这个问题,以便如果我设置z=x然后应用del z,x保持不变?
我通过将它们的投影减去前1-2个主成分来调整数据矩阵中的测量值.问题是,如果NA数据矩阵中只有一个(几千次测量几乎不可避免),内部产品操作x%*%y(我也试过sum(x*y),对于矢量x,y)返回NA.是否有一种简单的方法(即避免条件语句和循环)计算非NA值的内积,以便操作实际返回一些东西?
顺便说一句,我想避免只更换NA's 0',因为那时我必须在每个阶段重新规范化向量.
为了将标题标签作为矩阵中的条目而不是名称,我将read.table与参数header = FALSE一起使用.
当我将标题条目作为元素调用时,我会得到以下内容:
TCGA_20_0987_01A_02R_0434_01 21199等级:10.0039251940782 10.0057778066803 ... TCGA_20_0987_01A_02R_0434_01
现在,第一个值(TCGA_20 ...)就是我想要的."Levels"条目来自哪里,它们是什么,以及如何避免它们以便只有标题标签显示为矩阵元素?