--- tags: スキル定義委員会, データ共有, 性質・関係性の把握, 事業への実装 --- # スキル定義委員会-096 ## DE-96 データ共有 - データ展開 ⭐️⭐️ ### Q.利用者の要件に合致したレポート(図、表)を、PDFやPostScriptなどの印刷用フォーマットで出力する変換機能を設計できる #### 作成したレポートをPDFやPostScriptに出力するライブラリ 1. **ReportLab** - (参考)[https://qiita.com/takahashi_you/items/8c5fb1f07db1825c67a5] - (参考)[https://qiita.com/shiro01/items/8349a95df97609c2de7f] 1. **PyFPDF** - (リファレンス-tutorial)[https://pyfpdf.readthedocs.io/en/latest/Tutorial/index.html] 1. **WeasyPrint** - (参考)[https://qiita.com/QUANON/items/727433f6c39a51fd4052] 1. **xhtml2pdf** - (参考)[https://self-development.info/%E3%80%90python%E3%80%91pdf%E3%82%92%E4%BD%9C%E6%88%90%E3%81%A7%E3%81%8D%E3%82%8Bxhtml2pdf%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/] - (参考)[https://qiita.com/shiro01/items/8349a95df97609c2de7f] 1. **PyX** - (参考)[] 1. **Matplotlib** ------------------------------------------------------------------------ ## DS-96 性質・関係性の把握 - 性質・関係性の把握 ⭐️ 🔥必須🔥 ### Q.適切な軸設定でクロス集計表を作成し、属性間のデータの偏りを把握できる 生徒のデータセットと異なる科目のテストの点数があり、各科目で一定の基準点以上または以下の点数を取った生徒の数のクロス集計 ```python= import pandas as pd # Create a sample dataset data = { 'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'], 'Math': [80, 70, 90, 65, 75], 'Science': [85, 75, 80, 60, 70], 'English': [90, 80, 85, 70, 75] } df = pd.DataFrame(data) # Create a cross tabulation of the number of students who scored above or below a certain threshold in each subject threshold = 80 ct = pd.crosstab( index=[df['Math'] > threshold, df['Science'] > threshold], columns=df['English'] > threshold, rownames=['Math score', 'Science score'], colnames=['English score'] ) ``` ここで、行は数学と理科の得点、列は英語の得点を表している。表中の数値は、各科目で基準点以上または基準点未満の生徒の数を表している。 Pythonでプロットの軸を設定するには、matplotlibライブラリのset_xlimとset_ylimメソッドを使用することができます。以下はその例です。 ```python= import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y = np.sin(x) plt.plot(x, y) plt.xlim([0, 10]) plt.ylim([-1, 1]) plt.show() ``` データの属性間の偏りをグラフ化するには、Pythonのseabornライブラリを使用することができます。seabornは、データを探索し理解するためのいくつかの可視化ツールを提供しており、変数間の関係を可視化するツールも含まれています。ここでは、seabornを使用して属性間のデータの偏りをグラフ化する方法の例を示します。 ```python= import seaborn as sns import pandas as pd # Load the dataset df = pd.read_csv('data.csv') # Plot the bias of the data among the attributes using a heatmap sns.set_theme(style="white") corr = df.corr() mask = np.triu(np.ones_like(corr, dtype=bool)) cmap = sns.diverging_palette(230, 20, as_cmap=True) sns.heatmap(corr, mask=mask, cmap=cmap, vmax=.3, center=0, square=True, linewidths=.5, cbar_kws={"shrink": .5}) ``` ここでは、まずpandasライブラリを使ってデータセットを読み込みます。次に、corr()メソッドを使用して属性間の相関行列を計算します。相関行列は、変数のペアの間の線形関係を測定し、値は-1から1までの範囲です。正の値は正の相関を、負の値は負の相関を示し、ゼロに近い値は相関がないことを示す。 次に、seaborn を使って相関行列をヒートマップとしてプロットする。ヒートマップは、変数のペア間の相関を色分けしたマトリックスとして表示します。濃い色は相関が強いことを示し、薄い色は相関が弱いか相関がないことを示す。 ヒートマップを分析することで、どの属性が互いに高い相関を持ち、どの属性がほとんど相関を持たないかを特定することができる。これにより、属性間のデータの偏りを理解し、特徴の選択やモデリングの決定を導くことができる。 ------------------------------------------------------------------------ ## BZ-96 事業への実装 - 評価・改善の仕組み ⭐️⭐️⭐️ ### Q.既存のPDCAサイクルに対し、次の改善的な取り組みにつなげることができる 1. **The cycle is iterative** PDCAサイクルは一過性のものではなく、継続的な改善プロセスです。各サイクルの結果は次のサイクルに反映され、継続的な改善が可能になります。 1. **Data and feedback are critical** PDCAサイクルは、改善活動の効果を測定するためのデータとフィードバックに依存しています。情報に基づいた意思決定を行うために、正確なデータとフィードバックを収集し、分析することが重要です。 1. **Communication is key** PDCAサイクルには、チームメンバー、経営陣、顧客など、複数の関係者が関与します。PDCAサイクルを回すためには、効果的なコミュニケーションが不可欠です。 1. **Focus on continuous improvement** PDCAサイクルは、一過性の修正ではなく、継続的な改善を達成するための手段です。目標は、改善すべき領域を特定し、プロセスや手順を継続的に改善することで、全体的なパフォーマンスを向上させることです。 PDCAサイクルを回すことで、組織はプロセス、製品、サービスを体系的に改善し、長期的により良い結果を得ることができます。 ------------------------------------------------------------------------ # Quote - [スキル定義委員会 from データサイエンティスト協会](https://twitter.com/jdss_skill) <style> .att0 {color: #eb4034;} .att1 {color: #3465eb;} .att2 {color: #69c976;} </style> <!-- <span class="att0"></span> -->