age_data.loc[(age_data['YEARS_BINNED'] == year_group_sorted[i]) & \(age_data['TARGET'] == 0), 'YEARS_BIRTH'], label = str(year_group_sorted[i])程式語法問題?
您好~
關於作業我有兩個問題~~ 如下圖的區塊
1.不太了解需要對誰做排序
2.age_data.loc[(age_data['YEARS_BINNED'] == year_group_sorted[i]) & \
(age_data['TARGET'] == 0), 'YEARS_BIRTH'], label = str(year_group_sorted[i]) 這一坨東西不太了解在運算什麼,是否可以拆解解釋呢
謝謝~~
回答列表
-
2019/05/01 下午 11:10張維元 (WeiYuan)贊同數:2不贊同數:0留言數:2
2.age_data.loc[(age_data['YEARS_BINNED'] == year_group_sorted[i]) & \
(age_data['TARGET'] == 0), 'YEARS_BIRTH'], label = str(year_group_sorted[i]) 這
=> 先講結論:挑出 YEARS_BINNED 等於 year_group_sorted[i] 組別且 age_data['TARGET'] == 0 的 YEARS_BIRTH 欄位資料
我們可以一層一層看:
* age_data['YEARS_BINNED'] == year_group_sorted[i] => 符合條件 YEARS_BINNED 欄位 = year_group_sorted 的 Boolean Series
* age_data['TARGET'] == 0 => 符合條件 TARGET 欄位 = 0 的 Boolean Series
* (age_data...) & (age_data...) => 把兩個條件做 &,也有是兩個條件同時存在時
* age_data.loc[..., ...] => loc 是一種取值方式,左邊放 Row 條件,右邊放 Column。原本的寫法就是挑出符合上面條件的 YEARS_BIRTH 欄位。