1

エンティティ セットを学習するために featuretools ドキュメントを使用していますが、現在KeyError: 'Variable: device not found in entity'、次のコードでエラーが発生しています。

import featuretools as ft
data = ft.demo.load_mock_customer()
customers_df = data["customers"]
customers_df
sessions_df = data["sessions"]
sessions_df.sample(5)
transactions_df = data["transactions"]
transactions_df.sample(10)
products_df = data["products"]
products_df
### Creating an entity set 
es = ft.EntitySet(id="transactions")
### Adding entities
es = es.entity_from_dataframe(entity_id="transactions", dataframe=transactions_df, index="transaction_id", time_index="transaction_time", variable_types={"product_id": ft.variable_types.Categorical})
es
es["transactions"].variables
es =  es.entity_from_dataframe(entity_id="products",dataframe=products_df,index="product_id")
es
### Adding new relationship

new_relationship = ft.Relationship(es["products"]["product_id"],
                                   es["transactions"]["product_id"]) 
es = es.add_relationship(new_relationship)
es

### Creating entity from existing table
es = es.normalize_entity(base_entity_id="transactions",
        new_entity_id="sessions",
        index = "session_id",
        additional_variables=["device",customer_id","zip_code"])

これは URL によるものです - https://docs.featuretools.com/loading_data/using_entitysets.html

API es.normalise_entity から、この関数は、インデックスが「session_id」である新しいエンティティ「セッション」と、残りの 3 つの変数を作成するように見えますが、エラーは次のとおりです。

C:\Users\s_belvi\AppData\Local\Continuum\Anaconda2\lib\site-packages\featuretools\entityset\entity.pyc in _get_variable(self, variable_id) 250 return v 251 --> 252 raise KeyError("Variable: % s not found in entity" % (variable_id)) 253 254 @property

KeyError: '変数: エンティティにデバイスが見つかりません'

es.normalize_entity を使用する前に、エンティティの「セッション」を個別に作成する必要がありますか? フローで構文的に何かが間違っているように見えます.いくつかの小さな間違い..

4

1 に答える 1