コード例 #1
0
ファイル: od_main.py プロジェクト: jagio0129/person_trip
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:
コード例 #2
0
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():
コード例 #3
0
ファイル: plot_heatmap.py プロジェクト: jagio0129/person_trip
  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]")
コード例 #4
0
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のデータに対して以下の処理を行う
コード例 #5
0
ファイル: one_od_main.py プロジェクト: jagio0129/person_trip
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: