2017-06-21 1 views
1

to_csvを使用してsetパラメータを保存します。pandasはread_csvを使用して `set`パラメータを読み込みますか?

csvファイルは以下のとおりです。

1,59、「セット([17122、196、26405、13032、39657、12427、25133、35951、38928 、2 6088、10258、49235、10326、13176、30450、41787、14084、 46149])」、18,19.0,1 1,5.36363649368

は私がread_csvを使用してsetタイプが、str

users = pd.read_csv(DATA_PATH + "users_match.csv", dtype={ 
}) 

enter image description here

を返すことができます。

答えて

1

答えははいです。あなたのソリューション

users = pd.read_csv(DATA_PATH + "users_match.csv", header = None) 

はすでに限り、あなたはset([...])の周りに二重引用符を持っているように文字列として2列が返されます。 はその後、内蔵のPython setオブジェクトにデータフレームのstrオブジェクト(文字「セット」で始まる文字列)を変換するには、バックset

+0

次に、適切な – Sam

+0

を変換するには、 'df ['xx']。apply(lambda x:eval(x))'を使用します。 – VinceP

1

に変換する

users[2].apply(lambda x: eval(x)) 

を使用し、ここで1つの方法であります:

>>> import pandas as pd 
>>> df = pd.read_csv('users_match.csv', header=None) 
>>> type(df[2][0]) 
str 
>>> df.set_value(0, 2, eval(df[2][0])) 
>>> type(df[2][0]) 
set 
関連する問題