小编abn*_*abn的帖子

错误"参数意味着行数不同:x,y"是什么意思?

我正在尝试使用csv文件的元素创建一个图,如下所示:

h1,h2,h3,h4
a,1,0,1,0
b,1,1,0,1
c,0,0,1,0
Run Code Online (Sandbox Code Playgroud)

我尝试了以下代码,但收到错误说

Error in data.frame(id = varieties, attr(mat, "row.names"), check.rows = FALSE) : 
  arguments imply differing number of rows: 8, 20 
Run Code Online (Sandbox Code Playgroud)

我的示例数据有8列和20行(不包括标题和行名称).我尝试在线查找并尝试实施一些修复,但问题仍然存在.我真的很感激任何帮助.

mat <- read.csv("trial.csv", header=T, row.names=1)
varieties = names(mat)
df <- data.frame(id=varieties,attr(mat, "row.names"), check.rows= FALSE)
Run Code Online (Sandbox Code Playgroud)

csv plot r matrix ggplot2

40
推荐指数
3
解决办法
20万
查看次数

使用 Python 列出 FTP 中所有子目录中的所有文件

我是 Python 新手,我正在尝试列出 FTP 中所有子目录中的所有文件。FTP 和往常一样,就是这种格式。

 A
 B
 C
Run Code Online (Sandbox Code Playgroud)

子目录:

 AA
 BB
 CC
Run Code Online (Sandbox Code Playgroud)

['A', 'B', 'C']我可以使用列出目录ftp.nlist()。我想得到['AA', 'BB', 'CC']我的输出。我已经尝试并查找了很多以找到解决方案/提示来执行此操作。

python ftp ftplib subdirectory filelist

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

根据列中的数据合并两个CSV文件

我有两个csv文件,如下所示.

CSV1

data13      data23      d      main_data1;main_data2      data13         data23
data12      data22      d      main_data1;main_data2      data12         data22
data11      data21      d      main_data1;main_data2      data11         data21
data3       data4       d      main_data2;main_data4      data3          data4
data52      data62      d      main_data3                 data51         data62
data51      data61      d      main_data3                 main_data3     data61
data7       data8       d      main_data4                 data7          data8
Run Code Online (Sandbox Code Playgroud)

CSV2

id1      main_data1      a1      a2      a3
id2      main_data2      b1      b2      b3
id3      main_data3      c1      c2      c3
id4      main_data4      d1      d2      d3
id5      main_data5      e1      e2      e3
Run Code Online (Sandbox Code Playgroud)

现在我的问题是,我知道当两个文件中的一列完全相同时如何合并两个CSV文件.但我的问题有点不同.CSV1中的第4列可以包含CSV2中的第2列.我想获得一个CSV文件,如下所示

FINAL_CSV

id1      main_data1      a1      a2      a3      data13
id2      main_data2 …
Run Code Online (Sandbox Code Playgroud)

python regex csv merge two-columns

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

为什么我不能在 sqlite3 中使用 WITH 语句?

我正在尝试在 sqlite3 中执行以下查询:

WITH
    MATCHES AS(
        SELECT      CSV2.*
                    , CSV1.ROW as ROW_1
                    , CSV1.C4 as C4_1
                    , CSV1.C5 as C5_1
        FROM        CSV2
        LEFT JOIN   CSV1
        ON          CSV1.C4 LIKE '%' || CSV2.C2 || '%'
    ),
    EXACT AS(
        SELECT      *
        FROM        MATCHES
        WHERE       C4_1 = C5_1
    ),
    MIN_ROW AS(
        SELECT      C1
                    , min(ROW_1) as ROW_1
        FROM        MATCHES
        WHERE       C1 NOT IN (SELECT C1 FROM EXACT)
        GROUP BY    C1, C2, C3, C4, C5
    )
    SELECT      *
    FROM        EXACT
    UNION
    SELECT      MATCHES.*
    FROM        MIN_ROW …
Run Code Online (Sandbox Code Playgroud)

python sql sqlite

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

获取列表中所有字符串的第一个单词

我有一个 CSV 文件,我正在阅读该文件,如下所示。我需要获取所有字符串的第一个单词。我知道如何获得第一个字母,但我不确定如何获得单词。

['diffuse systemic sclerosis', 'back', 'public on july 15 2008']
['diffuse systemic sclerosis', 'forearm', 'public on may 9 2014']
Run Code Online (Sandbox Code Playgroud)

我希望我的输出是

diffuse
back
public
forearm
Run Code Online (Sandbox Code Playgroud)

python string split list strip

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

Python 中的正则表达式匹配文件夹中的所有文件

我对正则表达式很不好。我正在尝试根据文件名在文件夹中查找文件。大多数文件名都是格式GSE1234_series_matrix.txt,因此我一直使用os.path.join("files", GSE_num + "_series_matrix.txt"). 但是,有一些文件的名称类似于GSE1234-GPL22_series_matrix.txt. 我不确定如何处理以 GSE 编号开头并以 _series_matrix.txt 结尾的所有文件(可能在一个语句中)。我真的很感激任何帮助。

编辑 - 我在一个文件夹中有这些系列矩阵文本文件,我在其中提到了使用路径连接的路径。我还输入了一个文本文件,其中包含所有 GSE 编号。这样,它仅针对选定的 GSE 编号运行脚本。因此,并非文件夹中的所有内容都在 GSE 编号列表中,并且该列表仅包含 GSE 编号,而不包含 GPL。例如,文件 GSE1234-GPL22_series_matrix.txt 在列表中将是 GSE1234。

python regex path

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

将一列csv解压缩到逗号分隔的列表python中

我有一个CSV文件,我在下面读到:

with open ("ann.csv", "rb") as annotate:
    for col in annotate:
        ann = col.lower().split(",")
        print ann[0]
Run Code Online (Sandbox Code Playgroud)

我的CSV文件如下所示:

H1,H2,H3
da,ta,one
dat,a,two
Run Code Online (Sandbox Code Playgroud)

我的输出如下:

da
dat
Run Code Online (Sandbox Code Playgroud)

但我想要一个逗号分隔的输出,如(da,dat).我怎样才能做到这一点?如果你在downvoting之前给我一个想法,我真的很感激.

python csv split strip comma

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

使用Python打印列表列表之间的差异

我有两个列表,如下所示.我知道我可以使用set(list1)-set(list2)或反之亦然来打印与其他对应列表不同的列表.但是,我不希望打印出完整的列表,我只想要修改列表的那一部分.

例如,list1:

[['Code', 'sID', 'dID', 'cID', 'ssID'], ['ABCD-00', 'ABCD-00-UNK', '358', '1234', '9999'], ['ABCD-01', 'ABCD-00-UNK', 160, '993', '587']]
Run Code Online (Sandbox Code Playgroud)

列表2:

[['Code', 'sID', 'dID', 'cID', 'ssID', 'AddedColumn'], ['ABCD-00', 'ABCD-00-UNK', '358', '1234', '9999', 'AddedValue1'], ['ABCD-01', 'ABCD-00-UNK', 160, '993', 'ChangedValue', 'AddedValue2']]
Run Code Online (Sandbox Code Playgroud)

如果我设置差异,它会打印出整个列表.我希望输出只显示"Code","sID"相同时不同/添加/删除的列.

编辑:

每个列表列表的第一个列表是标题.所以我想比较"Code","sID"列中的值匹配时的列表.

期望的输出:

Added - ['AddedColumn', 'AddedValue1', 'AddedValue2']
Deleted - []
Changed - ['Code', 'ABCD-01', 'ssID', 'ChangeValue']
Run Code Online (Sandbox Code Playgroud)

像这样或类似的东西也很好.

python list set

-2
推荐指数
1
解决办法
111
查看次数

标签 统计

python ×7

csv ×3

list ×2

regex ×2

split ×2

strip ×2

comma ×1

filelist ×1

ftp ×1

ftplib ×1

ggplot2 ×1

matrix ×1

merge ×1

path ×1

plot ×1

r ×1

set ×1

sql ×1

sqlite ×1

string ×1

subdirectory ×1

two-columns ×1