2016-07-19 12 views
3

私は効果的に(Excelからの)テキストから列への操作をしようとしていますが、Pandasで行います。データフレーム列のリストを2つのデータフレーム列に分割する

私は、1_1,2_1,3_1のような値を含むデータフレームを持っています。この値は、アンダースコアの右側にある値を取りたいだけです。私は分割された文字列をどのように分割するのかを考え出しましたが、分割された文字列のリストを私に提供しますが、別のデータフレーム列に分割する方法はわかりません。 、[1、1]、[2、1] [3,1]:私のような何かを得る

import pandas as pd 

test = pd.DataFrame(['1_1','2_1','3_1']) 
test.columns = ['values'] 

test = test['values'].str.split('_') 

:ここ

は私のコードです。私が取得しようとしている何

は、2つの別々の列です:

COL1:1、2、3 COL2:1、1、1

思考?複数の列を取得するためにあなたの助け

答えて

3

使用expand=Truesplitを行うための事前のおかげで:そこだけ1アンダースコアだし、あなただけ右に値を気にしている場合

test['values'].str.split('_', expand=True) 

は、あなたが使用できます。

test['values'].str.split('_').str[1] 
2

あなたが近づいている:

代わりのは、ちょうどこれを試して分割します

test2 = pd.DataFrame(test['values'].str.split('_').tolist(), columns = ['c1','c2']) 
関連する問題