質問編集履歴
6
最終的に得たい結果の例を追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -31,12 +31,12 @@
|
|
31
31
|
main()
|
32
32
|
```
|
33
33
|
|
34
|
-
###
|
34
|
+
### 結果
|
35
35
|
```Python
|
36
36
|
TypeError: expected string or bytes-like object
|
37
37
|
```
|
38
38
|
|
39
|
-
###
|
39
|
+
### 扱いたいデータの例
|
40
40
|
```text
|
41
41
|
>NEU2 neuraminidase 2[Homo sapiens] Gene ID: 4759, updated on 22-Aug-2020 NM_005383.2
|
42
42
|
ATGGCGTCCCTTCCTGTCCTGCAGAAGGAGAGCGTGTTCCAGTCGGGAGCCCATGCCTACAGAATCCCTG
|
@@ -127,4 +127,20 @@
|
|
127
127
|
ACACCTGTCAAGGAACGCGAGATGCTCTCAAAGCTCAAAAGCATCTGCTCACAAAACACTAGGCCACTCA
|
128
128
|
AAGGCACTTAAGTGTGTTTTGGTACGGGAATGACAACTTGTGAATTTTTGTTCTCAGTTTTGCTAATTGT
|
129
129
|
AAATGG
|
130
|
+
```
|
131
|
+
|
132
|
+
### 最終的に得たい結果の例
|
133
|
+
字数制限の都合上ATCG列は途中省略しました。
|
134
|
+
```text
|
135
|
+
Homo_sapiens
|
136
|
+
AT(省略)GA
|
137
|
+
|
138
|
+
Mus_musculus
|
139
|
+
GA(省略)AA
|
140
|
+
|
141
|
+
Rattus_norvegicus
|
142
|
+
CA(省略)TA
|
143
|
+
|
144
|
+
Drosophila_melanogaster
|
145
|
+
AG(省略)GG
|
130
146
|
```
|
5
np.nanをNaNに訂正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
|
-
Pythonのpandasを用いてテキストファイルを読み込み作成したデータフレームのカラムから、正規表現で[]が含まれるカラム要素(カラムの要素のうちどれか1つ、そしてその1つのみに[]が含まれることは判明している)の[]内の文字列のみを抽出し、それを第0列のカラム要素として再インデックス付与した上で他のカラム要素を
|
2
|
+
Pythonのpandasを用いてテキストファイルを読み込み作成したデータフレームのカラムから、正規表現で[]が含まれるカラム要素(カラムの要素のうちどれか1つ、そしてその1つのみに[]が含まれることは判明している)の[]内の文字列のみを抽出し、それを第0列のカラム要素として再インデックス付与した上で他のカラム要素をNaNにしたいです。
|
3
3
|
|
4
4
|
### 詳細
|
5
|
-
コマンドラインで入力したテキストファイルをPythonのArgparse、pandasで読み込んで第0列のカラム要素をカラムのある要素に含まれる[]の中の文字列に置き換えて他のカラム要素を全て
|
5
|
+
コマンドラインで入力したテキストファイルをPythonのArgparse、pandasで読み込んで第0列のカラム要素をカラムのある要素に含まれる[]の中の文字列に置き換えて他のカラム要素を全てNaNにし、さらにある列の要素に[]を含む行全ての第0列の要素をその行の[]内の文字列のみに置き換えて他の列の要素をNaNとするテキスト編集プログラムを作ろうとしています。そこでインターネットで調べたのですが、データフレームの要素を正規表現で検索、抽出する方法は分かったのですが、カラムのある要素を正規表現で検索、抽出する方法が分からないので教えて欲しいです。
|
6
6
|
|
7
7
|
### 使用言語
|
8
8
|
Python
|
4
微修正しました。内容に変更はありません。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
```ここに言語を入力
|
2
|
-
コード
|
3
|
-
|
1
|
+
### 前提・実現したいこと
|
4
2
|
Pythonのpandasを用いてテキストファイルを読み込み作成したデータフレームのカラムから、正規表現で[]が含まれるカラム要素(カラムの要素のうちどれか1つ、そしてその1つのみに[]が含まれることは判明している)の[]内の文字列のみを抽出し、それを第0列のカラム要素として再インデックス付与した上で他のカラム要素をnp.nanにしたいです。
|
5
3
|
|
6
4
|
### 詳細
|
3
コード、結果、データをマークダウンで整形しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
+
```ここに言語を入力
|
2
|
+
コード
|
1
|
-
### 前提・実現したいこと
|
3
|
+
```### 前提・実現したいこと
|
2
4
|
Pythonのpandasを用いてテキストファイルを読み込み作成したデータフレームのカラムから、正規表現で[]が含まれるカラム要素(カラムの要素のうちどれか1つ、そしてその1つのみに[]が含まれることは判明している)の[]内の文字列のみを抽出し、それを第0列のカラム要素として再インデックス付与した上で他のカラム要素をnp.nanにしたいです。
|
3
5
|
|
4
6
|
### 詳細
|
@@ -11,6 +13,7 @@
|
|
11
13
|
pandas, NumPy, Argparse
|
12
14
|
|
13
15
|
### コード(未完成)
|
16
|
+
```Python
|
14
17
|
import argparse
|
15
18
|
import numpy as np
|
16
19
|
import pandas as pd
|
@@ -28,13 +31,15 @@
|
|
28
31
|
|
29
32
|
if __name__ == "__main__":
|
30
33
|
main()
|
34
|
+
```
|
31
35
|
|
32
36
|
### 結果
|
37
|
+
```Python
|
33
38
|
TypeError: expected string or bytes-like object
|
39
|
+
```
|
34
40
|
|
35
41
|
### 扱いたいデータの例
|
36
|
-
|
42
|
+
```text
|
37
|
-
|
38
43
|
>NEU2 neuraminidase 2[Homo sapiens] Gene ID: 4759, updated on 22-Aug-2020 NM_005383.2
|
39
44
|
ATGGCGTCCCTTCCTGTCCTGCAGAAGGAGAGCGTGTTCCAGTCGGGAGCCCATGCCTACAGAATCCCTG
|
40
45
|
CCCTGCTCTACCTGCCTGGGCAGCAGTCCCTGCTGGCCTTCGCGGAACAGCGGGCAAGCAAGAAGGATGA
|
@@ -123,4 +128,5 @@
|
|
123
128
|
TGCACCAAGAACGCCTCTTTACTTGTGGCCATTGCTCAAAGGACTTTGCGCTACATGCGTATCTCAAGCG
|
124
129
|
ACACCTGTCAAGGAACGCGAGATGCTCTCAAAGCTCAAAAGCATCTGCTCACAAAACACTAGGCCACTCA
|
125
130
|
AAGGCACTTAAGTGTGTTTTGGTACGGGAATGACAACTTGTGAATTTTTGTTCTCAGTTTTGCTAATTGT
|
126
|
-
AAATGG
|
131
|
+
AAATGG
|
132
|
+
```
|
2
扱いたいデータの例を追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -30,4 +30,97 @@
|
|
30
30
|
main()
|
31
31
|
|
32
32
|
### 結果
|
33
|
-
TypeError: expected string or bytes-like object
|
33
|
+
TypeError: expected string or bytes-like object
|
34
|
+
|
35
|
+
### 扱いたいデータの例
|
36
|
+
以下のような内容のテキストファイル
|
37
|
+
|
38
|
+
>NEU2 neuraminidase 2[Homo sapiens] Gene ID: 4759, updated on 22-Aug-2020 NM_005383.2
|
39
|
+
ATGGCGTCCCTTCCTGTCCTGCAGAAGGAGAGCGTGTTCCAGTCGGGAGCCCATGCCTACAGAATCCCTG
|
40
|
+
CCCTGCTCTACCTGCCTGGGCAGCAGTCCCTGCTGGCCTTCGCGGAACAGCGGGCAAGCAAGAAGGATGA
|
41
|
+
GCACGCAGAGCTGATTGTCCTGCGCAGAGGAGACTACGACGCACCCACCCACCAGGTTCAGTGGCAAGCT
|
42
|
+
CAGGAGGTGGTGGCCCAGGCCCGGCTGGATGGCCACCGGTCCATGAACCCATGCCCCTTGTATGACGCGC
|
43
|
+
AGACGGGGACCCTCTTCCTCTTCTTCATTGCCATCCCTGGGCAAGTCACGGAGCAACAGCAGCTGCAGAC
|
44
|
+
CAGGGCCAATGTGACGCGGCTGTGCCAAGTCACCAGCACTGACCACGGGAGGACCTGGAGCTCCCCCAGA
|
45
|
+
GACCTCACTGATGCGGCCATCGGCCCAGCCTACCGGGAGTGGTCCACCTTTGCAGTGGGCCCGGGGCATT
|
46
|
+
GTTTGCAGCTTCACGACAGGGCCCGGAGCCTGGTGGTGCCCGCCTACGCCTACCGGAAACTTCACCCCAT
|
47
|
+
CCAAAGGCCGATCCCCTCTGCCTTCTGCTTCCTCAGCCATGACCATGGGCGCACGTGGGCGCGAGGGCAC
|
48
|
+
TTTGTGGCCCAGGACACCCTGGAGTGCCAGGTGGCCGAAGTCGAGACTGGGGAGCAGAGGGTGGTGACCC
|
49
|
+
TCAACGCGAGAAGCCACCTCCGAGCCAGGGTCCAGGCCCAGAGCACCAATGACGGGCTTGATTTCCAGGA
|
50
|
+
GTCTCAGCTGGTGAAGAAGCTGGTGGAGCCGCCGCCCCAGGGCTGCCAGGGGAGCGTCATCAGCTTCCCC
|
51
|
+
AGCCCCCGCTCGGGGCCTGGCTCCCCAGCCCAGTGGCTGCTCTACACTCACCCCACACACTCCTGGCAGA
|
52
|
+
GGGCCGACCTGGGTGCCTACCTCAACCCGCGACCTCCAGCCCCTGAGGCCTGGTCAGAGCCGGTACTGCT
|
53
|
+
GGCCAAGGGCAGCTGTGCCTACTCAGACCTCCAGAGCATGGGCACCGGCCCTGATGGGTCCCCCTTGTTT
|
54
|
+
GGGTGTCTGTACGAAGCCAATGATTACGAGGAGATTGTCTTTCTCATGTTCACCCTGAAGCAAGCCTTCC
|
55
|
+
CAGCTGAGTACCTGCCTCAGTGA
|
56
|
+
|
57
|
+
>Neu2 neuraminidase 2[Mus musculus] Gene ID: 23956, updated on 25-Aug-2020 NM_001160163.1
|
58
|
+
GACATGACCCAAACGGCCCCTGGCTGCAAGGTAATATCGGAAGTTGACTAAGAATGGACGCCCCACCACT
|
59
|
+
GACTGACCCGCCCCCTGAGTCTGAGATTGGACTTGTCTCTGGATACAGTCATACTTTGAGGTACTACAAG
|
60
|
+
TTAGAAACTGTTAGGTTACTCAGTTCAGTCCATGACAGTCCAACCTTCTCCATGGTTTTCCGATCTCAGG
|
61
|
+
CCCATGGCGACCTGCCCTGTCCTGCAGAAGGAGACACTGTTCCGCACAGGCGTCCATGCTTACAGAATCC
|
62
|
+
CTGCTCTGCTCTACCTGAAGAAGCAGAAGACCCTGCTGGCCTTTGCGGAAAAGCGAGCCAGCAAGACGGA
|
63
|
+
TGAGCACGCAGAGTTGATTGTCCTGAGAAGAGGAAGCTACAACGAAGCCACCAACCGTGTCAAGTGGCAG
|
64
|
+
CCTGAGGAAGTGGTGACCCAAGCCCAGCTGGAAGGCCACCGCTCCATGAATCCATGTCCCTTGTATGACA
|
65
|
+
AGCAAACAAAGACCCTCTTCCTTTTCTTCATCGCTGTCCCTGGGCGTGTATCAGAACATCATCAGCTCCA
|
66
|
+
CACTAAGGTTAATGTCACACGGCTGTGCTGTGTCAGCAGCACTGACCATGGGAGGACCTGGAGCCCCATC
|
67
|
+
CAGGACCTCACAGAGACCACCATTGGCAGCACTCATCAGGAATGGGCCACATTTGCTGTGGGTCCTGGGC
|
68
|
+
ATTGTCTGCAGCTGCGGAACCCAGCTGGGAGCCTGCTGGTACCTGCTTATGCCTACCGGAAACTGCACCC
|
69
|
+
TGCTCAGAAGCCTACCCCCTTTGCCTTCTGCTTCATCAGCCTTGACCATGGGCACACATGGAAACTAGGC
|
70
|
+
AACTTTGTGGCTGAAAACTCACTGGAGTGCCAGGTGGCTGAGGTTGGCACTGGAGCTCAGAGGATGGTAT
|
71
|
+
ATCTCAATGCTAGGAGCTTCCTGGGAGCCAGGGTCCAGGCACAAAGTCCTAATGATGGTCTGGATTTCCA
|
72
|
+
GGACAACCGGGTAGTGAGTAAGCTTGTAGAGCCCCCCCACGGGTGTCATGGAAGTGTGGTTGCCTTCCAC
|
73
|
+
AACCCCATCTCTAAGCCACATGCCTTAGACACATGGCTTCTTTATACACACCCTACAGACTCCAGGAATA
|
74
|
+
GAACCAACCTGGGTGTGTACCTAAACCAGATGCCACTAGATCCCACAGCCTGGTCAGAGCCCACCCTGCT
|
75
|
+
GGCCATGGGCATCTGTGCCTACTCAGACTTACAGAACATGGGGCAAGGCCCTGATGGCTCCCCACAGTTT
|
76
|
+
GGGTGTCTGTATGAATCAGGTAACTATGAAGAGATCATTTTCCTCATATTCACCCTGAAGCAAGCTTTCC
|
77
|
+
CCACTGTATTTGATGCCCAGTGATCTCAGTGCACGTGGCCCAAAGGGCTTCCTTGTGCTTCAAAACACCC
|
78
|
+
ATCTCTCTTTGCTTCCAGCATCCTCTGGACTCTTGAGTCCAGCTCTTGGGTAACTTCCTCAGGAGGATGC
|
79
|
+
AGAGAATTTGGTCTCTTGACTCTCTGCAGGCCTTATTGTTTCAGCCTCTGGTTCTCTTTTCAGCCCAGAA
|
80
|
+
ATCAAAGGAGCCTGGCTTTCCTCAGCCTGTTGGCAGGGCAGGTGGGGACAGTATATATAGAGGCTGCCAT
|
81
|
+
TCTGCATGTCGGTTGTCACTATGCTAGTTTAACCTGCCTGTTTCCCCATGCCTAGTGTTTGAATGAGTAT
|
82
|
+
TAATAAAATATCCAACCCAGCCCATTTCTTCCTGGAAAAAAA
|
83
|
+
|
84
|
+
>Neu2 neuraminidase 2[Rattus norvegicus] Gene ID: 29204, updated on 4-Jun-2020 XM_006245364.1
|
85
|
+
CACACACCTTCCTAGAAGCCAGGCAAGAGGGGAGGTGCCACTGAGGTGCAGGTTGACATGACCAGAACAG
|
86
|
+
TTCCTGGCTACAAGATCTCAGGCCCATGGAGACCTGCCCCGTCCTCCAGAAAGAGACGCTGTTCCACACA
|
87
|
+
GAAGTCTATGCTTACAGAATCCCTGCTCTGCTCTACCTGAAGAAGCAGAAGACCCTGCTGGCCTTTGCAG
|
88
|
+
AAAAGCGAGCCAGCAGGACGGATGAGCATGCTGAGTTGATTGTCCTGCGAAGAGGGAGCTACAATGGAGC
|
89
|
+
CACCAACCATGTCAAGTGGCAACCTGAGGAAGTGGTGACCCAAGCCCAGCTGGAGGGCCACCGCTCCATG
|
90
|
+
AATCCATGTCCCTTGTATGACAAGCAAACAAAGACCCTCTTCCTTTTCTTCATTGCTGTCCCTGGGCGTG
|
91
|
+
TATCAGAACAGCATCAGCTCCAAACTAGGGTTAATGTCACACGGCTATGCCGTGTCACCAGCACCGATTA
|
92
|
+
TGGGATGAACTGGAGCCCCGTCCAGGACCTCACAGAGACCACCATTGGCAGCACCCACCAGGACTGGGCC
|
93
|
+
ACATTTGCTGTGGGTCCAGGGCACTGTCTGCAGCTGCGGAACAGAGCTGGGAGCCTGCTGGTACCTGCTT
|
94
|
+
ATGCCTACCAGAAGCTGCACCCTGTCCATAAACCTACCCCCTTTGCCTTCTGCTTCATCAGCCTTGACCA
|
95
|
+
CGGGCACACGTGGGAACTAGGGAACTTTGTGTCTGAGAACTCACTGGAGTGTCAGGTGGCTGAGGTTGGC
|
96
|
+
ACTGGTGCTCATAGGGTGGTATATCTCAATGCTAGGAGCTTCATAGGAGCTAGAGTCCAGGCACAAAGTC
|
97
|
+
CTAACGATGGCCTGGATTTCCAGGACAACCAGGTAGTAAGTAAGCTTGTAGAGCCCCCCCACGGGTGTCA
|
98
|
+
TGGAAGTGTGGTCGCCTTCCACAGCCCCACCTCTAAGCCAGATGCCTTAGACATGTGGCTGCTTTATACC
|
99
|
+
CACCCTACGGACTCCAGGAATAGAACCAACCTGGGCGTGTACCTCAACCAGACGCCACTAGATCCCACAG
|
100
|
+
CCTGGTCAGAGCCCACCCTGCTAGCCACGGGCACCTGTGCCTACTCAGACTTGCAGAATATGGGGCGTGG
|
101
|
+
CCCTGATGGGTCCCCACAGTTTGGGTGCCTGTATGAATCAGGTAACTATGACGAGATCATTTTCCTCATG
|
102
|
+
TTCACCCTGAAGCAAGCTTTTCCCACAGTACATGGTGCTCAGTGACCTCATTGCATGTGGCTTCCAAAGG
|
103
|
+
GCTTCCTGTGCTTCAGAACACCCGTCTCTCTTTCCTTCCAGCATCCTCTGGACTCTTGAATCCAGCTCTT
|
104
|
+
GGGTCTGTTCCTTGGGAGTATACAGAGAGTTTGGTCTCTTGACTCTTAGCAAGTTTTGTTCTTTCAGCCT
|
105
|
+
CCGAAAGTGGGTTCTATTTTCAGCCCAGAAATCAAAGGAGCCTGACTTTCCTCAGCCTGTATGTATAAAG
|
106
|
+
GCTGCCACTCTGCATGTTGGCTGTCACTATGTTAGCTTAACCTGCCTGTTTCCCCATGCCTAGTTTTTGG
|
107
|
+
ATGAATATTAATAAATTAATTATCCTACTCAGCCTA
|
108
|
+
|
109
|
+
>Neu2 Neuroectoderm-expressed 2[Drosophila melanogaster] Gene ID: 40375, created on 31-Jul-2003 NM_001275231.1
|
110
|
+
AGAAGGAGTACAACCCTTGTCATAGCAACATCTTTACAGATTGCCAATTCCTGTGCTTATTGCCACATTT
|
111
|
+
TAAATACGCATTCGCCGTGAACAAACACGAAAATAAGATCGATGGAATCGTCAATATGCCGAGTTTGCCT
|
112
|
+
GGTCAGTTACGAAAATATGGCCAGTGTTTTCGATGAGTCTCATGAACCGGGCCTATCCATTGCGTACATA
|
113
|
+
ATATACAAGTGCACCGGCTGGCAAGTTGAGAAGCACGATCCACTGTCCAACACCATATGCAAGTCCTGTC
|
114
|
+
TGGAGGATGCGCAGAATGCATTCGATATCATAGAAACGTACGAGAGAAGTCACCAGTTTTACCGCTTCCT
|
115
|
+
CAAGGATGTACGGGAGGAGGAGAGTGAAAATGATGGATCCGGATGCTCAGAAGAAGTGGAGGCAGCTGAG
|
116
|
+
AGGGATCTCCAGGATGGTGCCGACGACGTCGATTCCGGCAATGAACCTGATATTAACGAATGTGATATCA
|
117
|
+
AGGCCAAGGAGAAACCAGGCTTTAGCTGTTCTCACTGCCCTAAATCTTTTCAAGTAAAATCAAATCTGAA
|
118
|
+
GGTACACATGCGTTCACACACAGGAGAACGTCCCTTCACGTGTTCCCTCTGCCCCAAGTCCTTTGGCTAT
|
119
|
+
AGCTCTGGTCTTCAGAATCACATGCGAACCCACACAGGAGAACGACCCTTCCAGTGCTCGCATTGCCCAA
|
120
|
+
GGTCCTTTACAGCTGGGCACCACCTCAAGGCCCACATACAGATGCACGAAAGAAGAGGATCGTTAAGGTG
|
121
|
+
CCCATACTGCCAAAAGTGCTTTCTAACTTCTTTAATTCTCAAGCAGCATTTGGCCACGCACACTGATGAA
|
122
|
+
ACGCAGTTCAAGTGTTCCCAGTGCTCGAAGTCCTTTCAAGTCGAACATGAACTTTGGATGCACATGCGAG
|
123
|
+
TGCACCAAGAACGCCTCTTTACTTGTGGCCATTGCTCAAAGGACTTTGCGCTACATGCGTATCTCAAGCG
|
124
|
+
ACACCTGTCAAGGAACGCGAGATGCTCTCAAAGCTCAAAAGCATCTGCTCACAAAACACTAGGCCACTCA
|
125
|
+
AAGGCACTTAAGTGTGTTTTGGTACGGGAATGACAACTTGTGAATTTTTGTTCTCAGTTTTGCTAATTGT
|
126
|
+
AAATGG
|
1
コードと結果を追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -8,4 +8,26 @@
|
|
8
8
|
Python
|
9
9
|
|
10
10
|
### 使用ライブラリ
|
11
|
-
pandas, NumPy, Argparse
|
11
|
+
pandas, NumPy, Argparse
|
12
|
+
|
13
|
+
### コード(未完成)
|
14
|
+
import argparse
|
15
|
+
import numpy as np
|
16
|
+
import pandas as pd
|
17
|
+
import re
|
18
|
+
|
19
|
+
def main():
|
20
|
+
parser = argparse.ArgumentParser(description="")
|
21
|
+
parser.add_argument("importfile", type=str, help="TSV file input")
|
22
|
+
args = parser.parse_args()
|
23
|
+
df = pd.read_table(args.importfile)
|
24
|
+
df_column_list=list(df.columns)
|
25
|
+
df_column_list_2=re.findall('(?<=[).*?(?=])',df_column_list)
|
26
|
+
df.columns=df_column_list_2
|
27
|
+
print(df)
|
28
|
+
|
29
|
+
if __name__ == "__main__":
|
30
|
+
main()
|
31
|
+
|
32
|
+
### 結果
|
33
|
+
TypeError: expected string or bytes-like object
|