c = configparser.ConfigParser() c.read(SOURCE_PATH + '/config.ini') c = c["DEFAULT"] PERSON_TRIP = c["PERSON_TRIP"] GEO_JSON = c["GEO_JSON"] TEST_DATA = [c["TEST_DATA"]] OD_PATH = c["OD_PATH"] ### main if __name__ == '__main__': start = time.time() # スクリプトの概要をdump utils.dump_description("Create Origin-Destination CSV file.") geo_json = utils.json_parser(GEO_JSON) od_counter = defaultdict(int) # ODをカウントするためのdict for abs_file in utils.file_list(PERSON_TRIP): # 実データ用 # for abs_file in TEST_DATA: # テスト用 print("Load: " + abs_file) # csvファイルをDataFrameとしてロード df = pd.read_csv(abs_file) # ユーザデータごとに以下の処理を行う u_list = user.user_list(df) pbar = tqdm(total=len(u_list)) # for progress bar for u in u_list:
c = configparser.ConfigParser() c.read(SOURCE_PATH + '/config.ini') c = c["DEFAULT"] PERSON_TRIP = c["PERSON_TRIP"] GEO_JSON = c["GEO_JSON"] TEST_DATA = [c["TEST_DATA"]] OD_PATH = c["OD_PATH"] PUBOFFICE_PATH = c["PUBOFFICE_PATH"] ### main if __name__ == '__main__': start = time.time() # スクリプトの概要をdump utils.dump_description("Calcurate 2 point distance.") for abs_file in utils.file_list(OD_PATH): # 実データ用 # for abs_file in TEST_DATA: # テスト用 print("Load: " + abs_file) od_df = pd.read_csv(abs_file) # ヘッダーにdistanceが存在していれば次 if 'distance' in od_df.columns.values: print("'distance' header exists.") continue od_df["distance"] = 0.0 # ODデータに対して以下の処理を行う pbar = tqdm(total=len(od_df)) # for progress bar for index, od_row in od_df.iterrows():
def run(cls): for abs_file in utils.file_list(OD_PREFECTURE_PATH): # 実データ用 print(abs_file) df = pd.read_csv(abs_file) heatmap.plot_pref_heatmap(df, 'amount', 'origin', 'destination') date_name = utils.file_date(abs_file) outpath = c["DATA_PATH"] + "/gravity_heatmap" + "/prefecture" heatmap.export_pdf(outpath,date_name) if __name__ == '__main__': start = time.time() # スクリプトの概要をdump utils.dump_description("Plot Heat Map.") # all_day() default() # a4d4() # one_point() # onepoint_a4d4() # 県別のヒートマップを作成する # Prefecture.create() # Prefecture.run() elapsed_time = time.time() - start print("elapsed_time:{0}".format(elapsed_time) + "[sec]")
c.read(SOURCE_PATH + '/config.ini') c = c["DEFAULT"] PERSON_TRIP = c["PERSON_TRIP"] GEO_JSON = c["GEO_JSON"] POPULATION_ORIGIN_DATA = c["POPULATION_ORIGIN_DATA"] POPULATION_SAVE_PATH = c["POPULATION_SAVE_PATH"] HEADER = ['city', 'city_id', 'population'] ### main if __name__ == '__main__': start = time.time() # スクリプトの概要をdump utils.dump_description("Create my-population csv file from Origin Data.") # GeoJSONをロード geo_json = utils.json_parser(GEO_JSON) # csvファイルをDataFrameとしてロード with codecs.open(POPULATION_ORIGIN_DATA, "r", "Shift-JIS", "ignore") as file: df = pd.read_table(file, delimiter=",") area_stack = [] # csvファイルの作成 with open(POPULATION_SAVE_PATH, 'w') as csv_file: writer = csv.DictWriter(csv_file, fieldnames=HEADER) writer.writeheader() # GeoJSONのデータに対して以下の処理を行う
def orgin_dest(data_frame): new_df = data_frame[0:2] if not check_2row(new_df): print(new_df) raise return new_df.head(1), new_df.tail(1) ### main if __name__ == '__main__': start = time.time() pd.set_option("display.max_colwidth", 1000) # スクリプトの概要をdump utils.dump_description("Create Origin-Destination CSV file of One point.") geo_json = utils.json_parser(GEO_JSON) od_counter = defaultdict(int) # ODをカウントするためのdict # for abs_file in utils.file_list(PERSON_TRIP): # 実データ用 for abs_file in TEST_DATA: # テスト用 # 一箇所ユーザのデータをロード df = pd.read_csv(abs_file) uList = user.stop_one_point_user_ids(df) pbar = tqdm(total=len(uList)) # for progress bar for u in uList: od_df = user.orgin_and_stay(df, u) try: