2017-08-06 8 views
0

私は、定義済みの配列の内容に基づいてデータフレームをフィルタリングしようとしています。Python pandas - あらかじめ定義された配列に基づいてデータフレームをフィルタリングする

私はStackOverflowでいくつかの例を参照しましたが、単純に空の出力が得られます。

私は間違っていることを理解できません。私はここでいくつかのガイダンスを求めてもらえますか?

import pandas as pd 
import numpy as np 

csv_path = 'history.csv' 
df = pd.read_csv(csv_path) 

pre_defined_arr = ["A/B", "C/D", "E/F", "U/Y", "R/E", "D/F"] 
distinct_count_column_headers = ['Entity'] 

distinct_elements= pd.DataFrame(df.drop_duplicates().Entity.value_counts(),columns=distinct_count_column_headers) 
filtered_data= distinct_elements[distinct_elements['Entity'].isin(pre_defined_arr)]  

print("Filtered data ... ") 
print(filtered_data) 

OUTPUT

Filtered data ... 
Empty DataFrame 
Columns: [Entity] 
Index: [] 
+0

私たちにいくつかのデータを見せてください。 –

+0

ありがとうスティーブン。あなたの意欲を助けてくれてありがとう。最終的に解決するために管理されます。 – usert4jju7

答えて

0
filter機能を使用してそれに管理

- >.filter(items=pre_defined_arr)

import pandas as pd 
import numpy as np 

csv_path = 'history.csv' 
df = pd.read_csv(csv_path) 

pre_defined_arr = ["A/B", "C/D", "E/F", "U/Y", "R/E", "D/F"] 
distinct_count_column_headers = ['Entity'] 

distinct_elements_filtered= pd.DataFrame(df.drop_duplicates().Entity.value_counts().filter(items=pre_defined_arr),columns=distinct_count_column_headers) 

それは私がそのfilter機能を示唆しているにぶつかった1つの答えはそこだと奇妙です。私の場合はほとんど役に立たなかった.isin機能について、そこから約9アウト10話。

関連する問題