#第2回コード例 #################################################### #p5(1) import pandas as pd #p5(2) s = pd.Series(["愛知県","静岡県","長野県","山梨県"]) print(s) #p5(3) df = pd.DataFrame([[1, 2], [3, 4]], columns=["項目A", "項目B"], index=["A市", "B市"]) print(df) #################################################### #p11 #データ解析用モジュール import pandas as pd #日本語フォントのインストール !pip install japanize-matplotlib #グラフ描画用モジュール import matplotlib.pyplot as plt import japanize_matplotlib #################################################### #p12 file = pd.ExcelFile("python.xlsx") data = file.parse("フォームの回答") data.head() #################################################### #p14 #タイムスタンプの列を取り出し x = data["タイムスタンプ"] print(x) x = data.タイムスタンプ print(x) #################################################### #p15 #0行目の性別を取り出し x = data.loc[0, "あなたの性別は?"] print(x) #0行目の性別と満足度を取り出し(リストで指定) x = data.loc[0, ["あなたの性別は?","今回の静岡観光の満足度は?"]] print(x) #0行目0列目を取り出し x = data.iloc[0, 0] print(x) #0行目の0列目から3列目までを取り出し(スライス指定) x = data.iloc[0, 0:4] print(x) #0行目の1列目と3列目を取り出し x = data.iloc[0, [1, 3]] print(x) #################################################### #p16 #居住地が静岡県の行だけを取り出し(検索) x = data[data["あなたの居住地は?"] == "静岡県"] print(x) #居住地が静岡県または愛知県の行だけを取り出し(検索) x = data[(data["あなたの居住地は?"] == "静岡県") | (data["あなたの居住地は?"] == "愛知県")] print(x) #居住地が静岡県かつ職業が学生の行だけを取り出し(検索) x = data[(data["あなたの居住地は?"] == "静岡県") & (data["あなたの職業は?"] == "学生")] print(x) #################################################### #p17 sei = data["あなたの性別は?"].value_counts() print(sei) sei.plot.bar() plt.show() #################################################### #p18 sei = data["あなたの性別は?"].value_counts() print(sei) sei.plot.bar() plt.show() sei.plot.pie() plt.show() #################################################### #p20 plt.rcParams["font.size"] = 18 #フォントサイズ設定 pd.options.display.notebook_repr_html = True #データフレームをHTMLで綺麗に表示 ret = data["あなたの性別は?"].value_counts() ret.plot.pie(autopct="%.1f%%", figsize=(6, 6), wedgeprops={"linewidth": 0, "edgecolor": "white"}, label = "", colors=("#ff8080", "#8080ff", "#80ff80")) plt.show() #集計表を描く kensu = data["あなたの性別は?"].count() #回答件数 ret["総計"] = kensu #総計行を追加 final = pd.DataFrame(ret) #集計結果をデータフレームに変換 #割合列を追加して、ラムダ式で割合を計算 final["割合"] = final["count"].map(lambda x: '{:.01f}'.format(x / kensu * 100) + "%") display(final) #集計表を整形して出力