matthew as a q.

競技プログラミングメイン

今日学んだこと(11/18)

map

pythonで各リストの要素に同じ処理を加えたいときに使える。
ここではラムダ関数を使用しているが、もともと存在する関数を使用することも可能。

例えば、pandasのread_csvで読み込んだdataframeに同じカラム名がついている場合、下記にように番号付きに書き換えられる。

あらかじめ、「df」という名前のdataframeがあるものとする。

  cols = list(map(lambda x: "column_" + str(x), range(len(df.columns))))
  df.columns = cols

pandas.concat

読み込んだリストを結合して、dataframeを返す。
axis=1とした場合、横方向に連結。

  import pandas as pd

  #同じ形式の表を読み込む
  list_of_list = [pd.read_csv(os.path.join(input_path, f), index_col = 0) for f in file_names]
  df = pd.concat(list_of_list, axis = 1)

dataframe.rank()

dataframe中の各カラムについて、各行に入っている値の順位を返す。