質問: times['cst_id', 'date_purchase_c', 'Store_code'][1]) drop ``` とにもかくにも 表現がわかりません。。。 少しだけでもいいので、ご教示下さい。。。。
回答: まとめるというのは重複している行を削除したいということでよろしいでしょうか? そうであれば、drop_duplicates() をお使いください。 pandas.DataFrame.drop_duplicates — pandas 0.25.0 documentation drop_duplicates(["列A", "列B"]) とした場合、列A、列Bの値が同じ行が複数ある場合、1行のみ残し、重複する他の行は削除されます。 サンプルコード 入力 CSV ``` cst_id,date_purchase_c,Store_code 3144054828245,2017-06-14,3001 3144054828245,2018-09-22,5026 3144054886139,2017-06-18,3001 3144054886139,2017-06-18,3001 3144054886139,2018-07-21,3042 3144054886139,2018-10-28,3042 3144055008531,2017-06-11,3001 3144055018841,2017-06-13,3001 3144055018841,2017-10-28,3220 3144055018841,2018-03-15,3001 ``` ``` import pandas as pd df = pd.read_csv("untitled.txt") print(df) # cst_id date_purchase_c Store_code # 0 3144054828245 2017-06-14 3001 # 1 3144054828245 2018-09-22 5026 # 2 3144054886139 2017-06-18 3001 # 3 3144054886139 2017-06-18 3001 # 4 3144054886139 2018-07-21 3042 # 5 3144054886139 2018-10-28 3042 # 6 3144055008531 2017-06-11 3001 # 7 3144055018841 2017-06-13 3001 # 8 3144055018841 2017-10-28 3220 # 9 3144055018841 2018-03-15 3001 df.drop_duplicates(["cst_id", "date_purchase_c", "Store_code"], inplace=True) print(df) # cst_id date_purchase_c Store_code # 0 3144054828245 2017-06-14 3001 # 1 3144054828245 2018-09-22 5026 # 2 3144054886139 2017-06-18 3001 # 4 3144054886139 2018-07-21 3042 # 5 3144054886139 2018-10-28 3042 # 6 3144055008531 2017-06-11 3001 # 7 3144055018841 2017-06-13 3001 # 8 3144055018841 2017-10-28 3220 # 9 3144055018841 2018-03-15 3001 ``` drop_duplicates を行ったあと、重複するインデックス 3, 4 は3が消されて4だけ残っていることがわかるかと思います。