PythonのPandasを使って"/"区切りで処理したCSVデータ(split_oid0)出力時にread_oid0の「コンポーネントID(フォルダー) 」カラムをOIDカラムの前に挿入して表示させたいです。
コード自体が効率的でない書き方かもしれないのですが、ご教授頂けると幸いです。
試した物としては、pandasのconcatやmergeを試したのですが、上手く結合させることができずにいます。
元々表示させるデータの指定方法が問題で結合させる必要がないかもしれないですが、Pandasの経験不足でして申し訳ありません。
import pandas as pd file0 = "./node_file2.csv" file1 = "./node_file3.csv" fr0 = pd.read_csv(file0, usecols=[1]) read_oid0 = pd.read_csv(file0, usecols=[1,11]) read_oid1 = pd.read_csv(file1, usecols=[1,8]) split_oid0 = read_oid0['OID'].str.split('/', expand=True) split_oid0 = split_oid0.fillna('OIDなし') split_oid1 = read_oid1['OID'].str.split('/', expand=True) split_oid1 = split_oid1.fillna('OIDなし') #merge_data = pd.concat(read_oid0, split_oid0,axis=1, join='inner') print(read_oid0) print(split_oid0)
結果 コンポーネントID(フォルダー) OID 0 5906 1618544796/1043253441/1468827215 1 5906 1618544796/1043253441/1468827215 2 5906 1618544796/1043253441/1468827215 3 5906 1618544796/1043253441/1468827215 4 5906 1618544796/1043253441/1468827215 .. ... ... 197 8102 NaN 198 8170 1714135326 199 8170 1714135326 200 8170 1714135326 201 8170 NaN [202 rows x 2 columns] 0 1 2 0 1618544796 1043253441 1468827215 1 1618544796 1043253441 1468827215 2 1618544796 1043253441 1468827215 3 1618544796 1043253441 1468827215 4 1618544796 1043253441 1468827215 .. ... ... ... 197 OIDなし OIDなし OIDなし 198 1714135326 OIDなし OIDなし 199 1714135326 OIDなし OIDなし 200 1714135326 OIDなし OIDなし 201 OIDなし OIDなし OIDなし [202 rows x 3 columns]
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/18 14:40