質問編集履歴
5
書式の改善
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
Pandasで読み込んだデータのX文字目からY文字目までを結合する方法について
|
1
|
+
Pandasで読み込んだデータのX文字目からY文字目までを結合する方法について又は任意の文字数でのtableの分割方法
|
body
CHANGED
File without changes
|
4
書式の改善
title
CHANGED
File without changes
|
body
CHANGED
@@ -21,13 +21,14 @@
|
|
21
21
|
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
22
22
|
|
23
23
|
> 作成したいデータ
|
24
|
-
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
24
|
+
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
25
25
|
|
26
26
|
※スペースは文字列としてカウント
|
27
27
|
|
28
28
|
結合は
|
29
|
+
HD,ABCDFE, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
29
|
-
1~2, 3~7, 8~18,
|
30
|
+
1~2, 3~7, 8~18 ,19~24, 25~28, 29~36, 37~44, 45~52 文字目を結合したいです。
|
30
|
-
2 6 11
|
31
|
+
2 6 11 6 4 8 8 8 ←それぞれの結合したい文字数
|
31
32
|
|
32
33
|
### 該当のソースコード
|
33
34
|
`````````````````````````````````````````````````````````````````````
|
3
段落修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -19,8 +19,10 @@
|
|
19
19
|
|
20
20
|
> 引用テキスト(元データ)
|
21
21
|
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
22
|
+
|
22
|
-
作成したいデータ
|
23
|
+
> 作成したいデータ
|
23
24
|
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
25
|
+
|
24
26
|
※スペースは文字列としてカウント
|
25
27
|
|
26
28
|
結合は
|
2
誤字
title
CHANGED
File without changes
|
body
CHANGED
@@ -21,6 +21,7 @@
|
|
21
21
|
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
22
22
|
作成したいデータ
|
23
23
|
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
24
|
+
※スペースは文字列としてカウント
|
24
25
|
|
25
26
|
結合は
|
26
27
|
1~2, 3~7, 8~18, 19~24, 25~28, 29~36, 37~44, 45~52 文字目を結合したいです。
|
1
ソースコードを途中までですが、最初から記載いたしました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -6,24 +6,50 @@
|
|
6
6
|
### 発生している問題・エラーメッセージ
|
7
7
|
|
8
8
|
元のテキストデータはTabや「,」で区切られておりません。
|
9
|
-
このため、行ったのは1
|
9
|
+
このため、行ったのは1,005文字を一文字づつ区切って
|
10
10
|
data[0]+data[1]...で結合を行っているが、1,005文字あるのでこれを手作業で行うよりは
|
11
11
|
X文字目からY文字目まで結合するなどのコードが分かればと思い質問させていただきました。
|
12
12
|
よろしくお願いします。
|
13
13
|
|
14
|
+
コードを使う使わない別として、全てのコードを記載しました。
|
15
|
+
分かりづらくて申し訳ありません。
|
16
|
+
|
17
|
+
現在成功している事
|
18
|
+
読み込んだデータを1文字づつ区切る
|
19
|
+
|
14
|
-
|
20
|
+
> 引用テキスト(元データ)
|
15
|
-
元データ(一部抜粋)
|
16
|
-
HDABCDEF 000111
|
21
|
+
HDABCDEF 000111 YYYYMMDDYYYYMMDDYYYYMMDD
|
17
22
|
作成したいデータ
|
18
|
-
HD,ABCDEF, ,000111, ,
|
23
|
+
HD,ABCDEF, ,000111, ,YYYYMMDD,YYYYMMDD,YYYYMMDD
|
19
24
|
|
25
|
+
結合は
|
26
|
+
1~2, 3~7, 8~18, 19~24, 25~28, 29~36, 37~44, 45~52 文字目を結合したいです。
|
20
|
-
|
27
|
+
2 6 11 6 4 8 8 8 ←それぞれの結合したい文字数
|
21
|
-
これで元データを1文字づつに区切り
|
22
28
|
|
29
|
+
### 該当のソースコード
|
30
|
+
`````````````````````````````````````````````````````````````````````
|
31
|
+
import pandas as pd
|
32
|
+
import numpy as np
|
33
|
+
import os
|
34
|
+
import openpyxl
|
35
|
+
import glob
|
36
|
+
import re
|
37
|
+
|
38
|
+
#ファイルパス
|
39
|
+
filepath = ('Python/test.txt')
|
40
|
+
|
41
|
+
#ファイル読み込み
|
42
|
+
df = pd.read_table(filepath , header=None)
|
43
|
+
|
44
|
+
df1 = df.iloc[0][0]
|
45
|
+
|
46
|
+
#1文字づつ分割
|
23
|
-
data[
|
47
|
+
data = [df1[i: i+1] for i in range(0, len(df1), 1)]
|
48
|
+
|
49
|
+
#1文字目と2文字目、 3~7文字目を結合、 8~18文字目を結合
|
50
|
+
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]
|
51
|
+
|
52
|
+
``````````````````````````````````````````````````````````````````````
|
53
|
+
|
24
54
|
という形での途中まで結合を行いました。
|
25
|
-
解決法がございましたら、よろしくお願いします。
|
55
|
+
解決法がございましたら、よろしくお願いします。
|
26
|
-
|
27
|
-
```ここに言語名を入力
|
28
|
-
Python3
|
29
|
-
```
|