質問編集履歴
5
書式の改善
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Pandasで読み込んだデータのX文字目からY文字目までを結合する方法について
|
1
|
+
Pandasで読み込んだデータのX文字目からY文字目までを結合する方法について又は任意の文字数でのtableの分割方法
|
test
CHANGED
File without changes
|
4
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -44,7 +44,7 @@
|
|
44
44
|
|
45
45
|
> 作成したいデータ
|
46
46
|
|
47
|
-
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
47
|
+
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
48
48
|
|
49
49
|
|
50
50
|
|
@@ -54,9 +54,11 @@
|
|
54
54
|
|
55
55
|
結合は
|
56
56
|
|
57
|
-
|
57
|
+
HD,ABCDFE, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
58
58
|
|
59
|
+
1~2, 3~7, 8~18 ,19~24, 25~28, 29~36, 37~44, 45~52 文字目を結合したいです。
|
60
|
+
|
59
|
-
2 6 11 6 4 8 8 8 ←それぞれの結合したい文字数
|
61
|
+
2 6 11 6 4 8 8 8 ←それぞれの結合したい文字数
|
60
62
|
|
61
63
|
|
62
64
|
|
3
段落修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -40,9 +40,13 @@
|
|
40
40
|
|
41
41
|
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
42
42
|
|
43
|
+
|
44
|
+
|
43
|
-
作成したいデータ
|
45
|
+
> 作成したいデータ
|
44
46
|
|
45
47
|
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
48
|
+
|
49
|
+
|
46
50
|
|
47
51
|
※スペースは文字列としてカウント
|
48
52
|
|
2
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -43,6 +43,8 @@
|
|
43
43
|
作成したいデータ
|
44
44
|
|
45
45
|
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
46
|
+
|
47
|
+
※スペースは文字列としてカウント
|
46
48
|
|
47
49
|
|
48
50
|
|
1
ソースコードを途中までですが、最初から記載いたしました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
元のテキストデータはTabや「,」で区切られておりません。
|
16
16
|
|
17
|
-
このため、行ったのは1
|
17
|
+
このため、行ったのは1,005文字を一文字づつ区切って
|
18
18
|
|
19
19
|
data[0]+data[1]...で結合を行っているが、1,005文字あるのでこれを手作業で行うよりは
|
20
20
|
|
@@ -24,34 +24,86 @@
|
|
24
24
|
|
25
25
|
|
26
26
|
|
27
|
-
|
27
|
+
コードを使う使わない別として、全てのコードを記載しました。
|
28
28
|
|
29
|
-
|
29
|
+
分かりづらくて申し訳ありません。
|
30
30
|
|
31
|
+
|
32
|
+
|
33
|
+
現在成功している事
|
34
|
+
|
35
|
+
読み込んだデータを1文字づつ区切る
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
> 引用テキスト(元データ)
|
40
|
+
|
31
|
-
HDABCDEF 000111
|
41
|
+
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
32
42
|
|
33
43
|
作成したいデータ
|
34
44
|
|
35
|
-
HD,ABCDEF, ,000111, ,
|
45
|
+
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
36
46
|
|
37
47
|
|
38
48
|
|
39
|
-
|
49
|
+
結合は
|
40
50
|
|
41
|
-
|
51
|
+
1~2, 3~7, 8~18, 19~24, 25~28, 29~36, 37~44, 45~52 文字目を結合したいです。
|
52
|
+
|
53
|
+
2 6 11 6 4 8 8 8 ←それぞれの結合したい文字数
|
42
54
|
|
43
55
|
|
44
56
|
|
57
|
+
### 該当のソースコード
|
58
|
+
|
59
|
+
`````````````````````````````````````````````````````````````````````
|
60
|
+
|
61
|
+
import pandas as pd
|
62
|
+
|
63
|
+
import numpy as np
|
64
|
+
|
65
|
+
import os
|
66
|
+
|
67
|
+
import openpyxl
|
68
|
+
|
69
|
+
import glob
|
70
|
+
|
71
|
+
import re
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
#ファイルパス
|
76
|
+
|
77
|
+
filepath = ('Python/test.txt')
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
#ファイル読み込み
|
82
|
+
|
83
|
+
df = pd.read_table(filepath , header=None)
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
df1 = df.iloc[0][0]
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
#1文字づつ分割
|
92
|
+
|
45
|
-
data[
|
93
|
+
data = [df1[i: i+1] for i in range(0, len(df1), 1)]
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
#1文字目と2文字目、 3~7文字目を結合、 8~18文字目を結合
|
98
|
+
|
99
|
+
df2 = data[0]+data[1], data[2]+data[3]+data[4]+data[5]+data[6]+data[7], data[8]+data[9]+data[10]+data[11]+data[12]+data[13]+data[14]+data[15]+data[16]+data[17]+data[18]
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
``````````````````````````````````````````````````````````````````````
|
104
|
+
|
105
|
+
|
46
106
|
|
47
107
|
という形での途中まで結合を行いました。
|
48
108
|
|
49
109
|
解決法がございましたら、よろしくお願いします。
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
```ここに言語名を入力
|
54
|
-
|
55
|
-
Python3
|
56
|
-
|
57
|
-
```
|