2017-11-29 7 views
0

私は、YAMLファイルからpandas.read_csv dtypesパラメータを設定するセクションをロードしたいという問題があります。私の問題は、辞書の価値には ""それがあり、パンダはそれをデータ型として認識していないということです。私はYAMLファイルのこの部分を印刷する場合yamlからのパンダのdtypes辞書

Yaml: 
    dict: {ITEM_GROUP: object, ITEM: object} 

import pandas as pd 
with open(yaml_org_path, 'r') as f: 
    config = yaml.load(f) 
df = pd.read_csv('file.csv', dtypes= config['Yaml']['dict']) 

私が取得:

print(config['Yaml']['dict']) 

{ 'ITEM_GROUP': 'オブジェクト'、 'ITEM': 'オブジェクト'}

私はないですYamlファイルで辞書を正しく使用しているのか、pyyamlの魔法のキーワードを使用する必要があるのか​​どうかを確認してください。私は初心者ですので、事前に感謝します!

答えて

1

これは私のために働く。


import yaml 

from io import StringIO 
config = yaml.load(StringIO(""" 
Yaml: 
    dict: {ITEM_GROUP: object, ITEM: object} 
""")) 

config['Yaml']['dict'] 
# {'ITEM': 'object', 'ITEM_GROUP': 'object'} 

pd.read_csv(StringIO(""" 
ITEM,ITEM_GROUP 
a,b 
c,d 
"""), dtype=config['Yaml']['dict']).dtypes 
#  ^^^^^ 
#ITEM   object 
#ITEM_GROUP object 
#dtype: object 
+0

ありがとう:あなたの問題はdtypeあるべきpd.read_csvでパラメータdtypesのようです!私は馬鹿のように感じる。 –

関連する問題