2016-07-14 6 views
0

私はこのようなデータフレームを作成しました。私の目的は、最初の行の'10、0 'のように、データフレームの各行の文字を結合することです。どうやってやるの?ありがとう。pythonでカンマを使用して1行に参加するにはどうすればいいですか?

import pandas as pd 
df = pd.DataFrame({'a': range(10,20),'b': range(0,10)}) 

>>df 
    a b 
0 10 0 
1 11 1 
2 12 2 
3 13 3 
4 14 4 
5 15 5 
6 16 6 
7 17 7 
8 18 8 
9 19 9 

答えて

1

あなたはこのようにそれを行うことができます。

import pandas as pd 
df = pd.DataFrame({'a': range(10,20),'b': range(0,10)}) 
valueList = [] 
for i in range(len(df)): 
    valueList.append(str(df['a'][i]) + "," + str(df['b'][i])) 
print valueList 

OUTPUT

['10,0', '11,1', '12,2', '13,3', '14,4', '15,5', '16,6', '17,7', '18,8', '19,9'] 

または単に:

import pandas as pd 
df = pd.DataFrame({'a': range(10,20),'b': range(0,10)}) 

print [",".join(map(str, pairs)) for pairs in zip(df['a'],df['b'])] 

OUTPUT

['10,0', '11,1', '12,2', '13,3', '14,4', '15,5', '16,6', '17,7', '18,8', '19,9'] 
0

次のように試してみてください:リストを使用してリストを返します。

[ str(x[0]) + "," + str(x[1]) for x in df.values.tolist()] 

['10,0', 
'11,1', 
'12,2', 
'13,3', 
'14,4', 
'15,5', 
'16,6', 
'17,7', 
'18,8', 
'19,9'] 
関連する問題