2016-11-15 18 views
0

Iは次のように定義dailyHistogram呼ばれるデータフレームを持っている:垂直にネストされたデータフレーム内のリスト要素を合計

NumVisitsは180日で、二次元アレイ(180 1440)であり、いくつかの活動のヒストグラムを保持
dailyHistogram = pd.DataFrame(
    { 
     'NumVisits':[[0 for x in range(1440)] for y in range (180)], 
     'DoW': [0]*ReportingDateRange.size 
    }, 
    columns=['NumVisits','DoF'], 
    index=ReportingDateRange 
) 

を。 DoWは、単に曜日を保持する列です。このデータフレームのインデックスは、アクティビティが発生した日付です。

私の問題はdailyHistogram [ "NumVisits"]上の任意の操作を実行しています。

dailyHistogram [ "NumVisits"]

アウト[193]:
2016年1月1日[5、0、0、ここで

はdailyHistogram [ "NumVisits"]は次のようになります。 0、0、 0、0、0、0、0、0、0、0、0、0、...

2016年1月2日[2、0、0、0、0、0、 0、0、0、0、0、0、0、0、0、...

2016年1月3日[6、0、0、0、0、0 、0、0、0、0、0、0、0、0、0、...

2016年1月4日[8、0、0、0、0、0、0、0、0、 0、0、0、0、0、0、...

2016年6月26日[3、0、0、0、0、0、0、0、0、0、0、0、0 、0、0、...

2016年6月27日[4、0、0、0、0、0、1、1、1、1、1、1、1、1、1、.. 。

2016年6月28日[7、0、0、1、1、1、1、1、1、1、1、1、1、1、1、...

2016- 06から29 [7、0、0、0、0、0、0、0、0、0、0、0、0、0、0、...

2016年6月30日[4、0、0、0、0、0、0、0、0、0、0、0、0、0、0、...

のFreq:D、名前:NumVisits、dtype:オブジェクト

dailyHistogram ["NumVisits"]の各要素を合計して、1440人のメンバーで1つのリストに到達したいと考えています。

+0

私はあなたの前の質問にこの質問に答えました。これはhttp://stackoverflow.com/questions/40618387/performing-arar-operations-on-nested-dataframe-containing-a-listの複製です。 – Kartik

答えて

2

これを試してみてください:

In [84]: dailyHistogram 
Out[84]: 
         NumVisits DoF 
0 [1, 0, 1, 1, 1, 1, 0, 1, 1, 1] NaN 
1 [1, 1, 0, 1, 0, 1, 0, 0, 1, 0] NaN 
2 [1, 0, 0, 0, 0, 1, 1, 0, 1, 0] NaN 
3 [0, 1, 0, 0, 0, 0, 0, 0, 1, 1] NaN 
4 [1, 1, 0, 0, 1, 1, 1, 1, 1, 0] NaN 

In [85]: dailyHistogram.NumVisits.apply(pd.Series).sum().tolist() 
Out[85]: [4, 3, 1, 2, 2, 4, 2, 2, 5, 2] 

セットアップ:

dailyHistogram = pd.DataFrame({'NumVisits':[[np.random.choice([0,1]) for x in range(10)] 
               for y in range (5)], 
           'DoW': [0]*5} 
           ,columns=['NumVisits','DoF']) 
関連する問題