小编mad*_*tty的帖子

TypeError:强制转换为Unicode:需要字符串或缓冲区

此代码返回以下错误消息:

  • open(infile,mode ='r',buffering = -1)为in_f,open(outfile,mode ='w',buffering = -1)为out_f:TypeError:强制转换为Unicode:需要字符串或缓冲区,找到文件

    # Opens each file to read/modify
    infile=open('110331_HS1A_1_rtTA.result','r')
    outfile=open('2.txt','w')
    
    import re
    
    with open (infile, mode='r', buffering=-1) as in_f, open (outfile, mode='w', buffering=-1) as out_f:
        f = (i for i in in_f if i.rstrip())
        for line in f:
            _, k = line.split('\t',1)
            x = re.findall(r'^1..100\t([+-])chr(\d+):(\d+)\.\.(\d+).+$',k)
            if not x:
                continue
            out_f.write(' '.join(x[0]) + '\n')
    
    Run Code Online (Sandbox Code Playgroud)

请有人帮助我.

python string typeerror

56
推荐指数
3
解决办法
14万
查看次数

awk中的绝对值不起作用?

我想选择第9列的绝对值小于500的文件行.列有时是正数,有时是负数.

awk -F'\t' '{ if ($9 < |500|) {print $0} }' > output.bam
Run Code Online (Sandbox Code Playgroud)

到目前为止这不起作用..互联网上的一轮告诉我要使用我们应该添加的绝对值

func abs(x) { return (x<0) ? x*-1 : x }
Run Code Online (Sandbox Code Playgroud)

那我怎么想把它与第9列的值一起?我不知道什么是正确的语法..

awk absolute

22
推荐指数
2
解决办法
3万
查看次数

拆分逗号分隔字符串 - > FUNCTION db.CHARINDEX不存在

我需要将逗号分隔的字符串拆分为第二列,我有下表:

CL1     POS                 POS2     LENGHT     ALLELE
1       3015108,3015109              5          A
2       3015110,3015200              10         B
3       3015200,3015300              15         C
4       3015450,3015500              20         D
5       3015600,3015700              15         E
Run Code Online (Sandbox Code Playgroud)

我想把逗号后面的数字分成第二列POS2所以它应该是那样的

CL1     POS                 POS2     LENGHT     ALLELE
1       3015108             3015109  5          A
2       3015110             3015200  10         B
3       3015200             3015300  15         C
4       3015450             3015500  20         D
5       3015600             3015700  15         E
Run Code Online (Sandbox Code Playgroud)

所以我查询了以下内容:

INSERT INTO MyTable (POS2)
SELECT RIGHT(POS, CHARINDEX(',', POS) + 1 ) FROM MyTable ;


 It returns an error : 
 ERROR 1305 (42000): …
Run Code Online (Sandbox Code Playgroud)

mysql string split function comma

18
推荐指数
1
解决办法
4万
查看次数

在 R 中创建 PDF 时 plot.new() 出错

在 R 中绘制树状图时,我遇到了一个我以前从未见过的有趣错误。

Error in plot.new() : 
  cannot open file 'C:\Users\Sun\AppData\Local\Temp\RtmpKSRNuD\pdf12207aa37548', reason No such file or directory
Run Code Online (Sandbox Code Playgroud)

昨天在绘制其他树状图并将其保存在 PDF 文件中时,我没有出现该错误.. 知道这意味着什么吗?

pdf r dendrogram

5
推荐指数
1
解决办法
5113
查看次数

使用 CROSS JOIN 进行超慢查询

我有两个名为 table_1 (1GB) 和引用 (250Mb) 的表。

当我查询引用的交叉联接时,更新 table_1 需要 16 小时。我们更改了 XFS 的系统文件 EXT3,但仍然需要 16 小时。我做错了什么?

这是更新/交叉连接查询:

  mysql> UPDATE table_1 CROSS JOIN reference ON
  -> (table_1.start >= reference.txStart AND table_1.end <= reference.txEnd)
  -> SET table_1.name = reference.name;
  Query OK, 17311434 rows affected (16 hours 36 min 48.62 sec)
  Rows matched: 17311434  Changed: 17311434  Warnings: 0
Run Code Online (Sandbox Code Playgroud)

这是table_1的显示创建表和参考:

    CREATE TABLE `table_1` (
     `strand` char(1) DEFAULT NULL,
     `chr` varchar(10) DEFAULT NULL,
     `start` int(11) DEFAULT NULL,
     `end` int(11) DEFAULT NULL,
     `name` varchar(255) DEFAULT NULL, …
Run Code Online (Sandbox Code Playgroud)

mysql performance cross-join

3
推荐指数
1
解决办法
6017
查看次数

在Linux上的6 GB文件中用硬标签替换空格字符

我有一个vi命令,用硬标签替换空格字符:

     vi myfile.txt
       : # To go to the last line 
          1,$s/ /\t/g   # Then I type in this to replace spaces by a tab
Run Code Online (Sandbox Code Playgroud)

我怎么能用AWKsed做到这一点?

linux vi awk replace sed

1
推荐指数
1
解决办法
1387
查看次数

如何在R中的4个数据帧之间只保留常用的行名?

我有4个基因数据框,每个数据框的基因名称为行,大约20列样本数据.因此每个矩阵都有行数(基因):

  • 答:10,000个基因
  • B:15,000个基因
  • C:35,000个基因
  • D:12,000个基因

这是我尝试过的,它没有选择9,000个常见行(Genes)的完整列表

Data_A = read.csv("matrix_A.csv");
Data_B = read.csv("matrix_B.csv");
Data_C = read.csv("matrix_C.csv");
Data_D = read.csv("matrix_D.csv");

Expr_A = as.data.frame(t(Data_A[, -c(1:8)]))
Expr_B = as.data.frame(t(Data_B[, -c(1:8)]))
Expr_C = as.data.frame(t(Data_C[, -c(1:8)]))
Expr_D = as.data.frame(t(Data_D[, -c(1:8)]))

commonGenes1 = intersect (rownames(Data_A),rownames(Data_D))
commonGenes2 = intersect (rownames(Data_B),rownames(Data_D))
commonGenes3 = intersect (rownames(Data_C),rownames(Data_D))

Data_A = Data_A[commonGenes1,]
Data_B = Data_B[commonGenes2,]
Data_C = Data_C[commonGenes3,]
Run Code Online (Sandbox Code Playgroud)

它们共有9,000个基因,虽然数据太大我不能在Excel中做到这一点.我用R来处理数据,有没有办法选择R中4个数据帧之间的共同基因?

这里有4个矩阵的例子:http: //www.filedropper.com/matrixexample

r matrix

1
推荐指数
1
解决办法
1413
查看次数

从两个表中选择计算不同行和公共行

我有两个表,T1和T2如下:

CATEGORY     ID
1           1100
1           1200
1           1300
1           1500 
2           2000
2           2100
2           2300
2           2500
Run Code Online (Sandbox Code Playgroud)

我需要知道 :

  • T1和T2之间有多少行相似(相同的CATEGORY和ID)
  • 来自T2的行数不在T1中
  • T1中有多少行不在T2中

从今天早上开始,我就把头埋在上面,试着去做类似的行:

select count(*) from T1, T2 WHERE 
T1.CATEGORY = T2.CATEGORY AND T1.ID = T2.ID; 
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何获得唯一的行(仅在T1或T2).

mysql sql

0
推荐指数
1
解决办法
3589
查看次数

标签 统计

mysql ×3

awk ×2

r ×2

string ×2

absolute ×1

comma ×1

cross-join ×1

dendrogram ×1

function ×1

linux ×1

matrix ×1

pdf ×1

performance ×1

python ×1

replace ×1

sed ×1

split ×1

sql ×1

typeerror ×1

vi ×1