Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "cells": [
- {
- "cell_type": "code",
- "execution_count": 1,
- "metadata": {},
- "outputs": [],
- "source": [
- "# 必要なライブラリをインポート\n",
- "import pandas as pd\n",
- "import numpy as np"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "<div>\n",
- "<style scoped>\n",
- " .dataframe tbody tr th:only-of-type {\n",
- " vertical-align: middle;\n",
- " }\n",
- "\n",
- " .dataframe tbody tr th {\n",
- " vertical-align: top;\n",
- " }\n",
- "\n",
- " .dataframe thead th {\n",
- " text-align: right;\n",
- " }\n",
- "</style>\n",
- "<table border=\"1\" class=\"dataframe\">\n",
- " <thead>\n",
- " <tr style=\"text-align: right;\">\n",
- " <th></th>\n",
- " <th>key1</th>\n",
- " <th>key2</th>\n",
- " <th>data1</th>\n",
- " <th>data2</th>\n",
- " </tr>\n",
- " </thead>\n",
- " <tbody>\n",
- " <tr>\n",
- " <th>0</th>\n",
- " <td>A</td>\n",
- " <td>1Gr</td>\n",
- " <td>11284.702046</td>\n",
- " <td>106.384940</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>1</th>\n",
- " <td>C</td>\n",
- " <td>2Gr</td>\n",
- " <td>8236.624741</td>\n",
- " <td>99.386840</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>2</th>\n",
- " <td>C</td>\n",
- " <td>2Gr</td>\n",
- " <td>7631.274238</td>\n",
- " <td>113.127964</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>3</th>\n",
- " <td>B</td>\n",
- " <td>1Gr</td>\n",
- " <td>11998.305120</td>\n",
- " <td>120.099518</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>4</th>\n",
- " <td>D</td>\n",
- " <td>2Gr</td>\n",
- " <td>9401.879005</td>\n",
- " <td>100.945629</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>5</th>\n",
- " <td>B</td>\n",
- " <td>1Gr</td>\n",
- " <td>9971.014043</td>\n",
- " <td>125.971079</td>\n",
- " </tr>\n",
- " </tbody>\n",
- "</table>\n",
- "</div>"
- ],
- "text/plain": [
- " key1 key2 data1 data2\n",
- "0 A 1Gr 11284.702046 106.384940\n",
- "1 C 2Gr 8236.624741 99.386840\n",
- "2 C 2Gr 7631.274238 113.127964\n",
- "3 B 1Gr 11998.305120 120.099518\n",
- "4 D 2Gr 9401.879005 100.945629\n",
- "5 B 1Gr 9971.014043 125.971079"
- ]
- },
- "execution_count": 2,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# 適当なデータフレームを作成\n",
- "df = pd.DataFrame({'key1' : ['A', 'C', 'C', 'B', 'D', 'B'],\n",
- " 'key2' : ['1Gr', '2Gr', '2Gr', '1Gr', '2Gr', '1Gr'],\n",
- " 'data1': np.random.normal(10000, 2000, 6),\n",
- " 'data2': np.random.normal(100, 20, 6)})\n",
- "df"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "metadata": {},
- "outputs": [],
- "source": [
- "# Groupby オブジェクト作成\n",
- "# data1 を key1 の値をもとにグループ分けされる\n",
- "gr_data1_key1 = df['data1'].groupby(df['key1'])"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "key1\n",
- "A 11284.702046\n",
- "B 10984.659582\n",
- "C 7933.949489\n",
- "D 9401.879005\n",
- "Name: data1, dtype: float64"
- ]
- },
- "execution_count": 4,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# ke1 の値(A, B, C, D)毎に合計値を算出\n",
- "gr_data1_key1.mean()"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "key1\n",
- "A 11284.702046\n",
- "B 21969.319164\n",
- "C 15867.898978\n",
- "D 9401.879005\n",
- "Name: data1, dtype: float64"
- ]
- },
- "execution_count": 5,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# ke1 の値(A, B, C, D)毎に合計値を算出\n",
- "gr_data1_key1.sum()"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 6,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "<div>\n",
- "<style scoped>\n",
- " .dataframe tbody tr th:only-of-type {\n",
- " vertical-align: middle;\n",
- " }\n",
- "\n",
- " .dataframe tbody tr th {\n",
- " vertical-align: top;\n",
- " }\n",
- "\n",
- " .dataframe thead th {\n",
- " text-align: right;\n",
- " }\n",
- "</style>\n",
- "<table border=\"1\" class=\"dataframe\">\n",
- " <thead>\n",
- " <tr style=\"text-align: right;\">\n",
- " <th></th>\n",
- " <th>data1</th>\n",
- " <th>data2</th>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>key1</th>\n",
- " <th></th>\n",
- " <th></th>\n",
- " </tr>\n",
- " </thead>\n",
- " <tbody>\n",
- " <tr>\n",
- " <th>A</th>\n",
- " <td>11284.702046</td>\n",
- " <td>106.384940</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>B</th>\n",
- " <td>10984.659582</td>\n",
- " <td>123.035298</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>C</th>\n",
- " <td>7933.949489</td>\n",
- " <td>106.257402</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>D</th>\n",
- " <td>9401.879005</td>\n",
- " <td>100.945629</td>\n",
- " </tr>\n",
- " </tbody>\n",
- "</table>\n",
- "</div>"
- ],
- "text/plain": [
- " data1 data2\n",
- "key1 \n",
- "A 11284.702046 106.384940\n",
- "B 10984.659582 123.035298\n",
- "C 7933.949489 106.257402\n",
- "D 9401.879005 100.945629"
- ]
- },
- "execution_count": 6,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# データフレームの各列に対して key1 の平均値を算出\n",
- "df.groupby('key1').mean()"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 7,
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "<div>\n",
- "<style scoped>\n",
- " .dataframe tbody tr th:only-of-type {\n",
- " vertical-align: middle;\n",
- " }\n",
- "\n",
- " .dataframe tbody tr th {\n",
- " vertical-align: top;\n",
- " }\n",
- "\n",
- " .dataframe thead th {\n",
- " text-align: right;\n",
- " }\n",
- "</style>\n",
- "<table border=\"1\" class=\"dataframe\">\n",
- " <thead>\n",
- " <tr style=\"text-align: right;\">\n",
- " <th></th>\n",
- " <th>data1</th>\n",
- " <th>data2</th>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>key2</th>\n",
- " <th></th>\n",
- " <th></th>\n",
- " </tr>\n",
- " </thead>\n",
- " <tbody>\n",
- " <tr>\n",
- " <th>1Gr</th>\n",
- " <td>11084.673737</td>\n",
- " <td>117.485179</td>\n",
- " </tr>\n",
- " <tr>\n",
- " <th>2Gr</th>\n",
- " <td>8423.259328</td>\n",
- " <td>104.486811</td>\n",
- " </tr>\n",
- " </tbody>\n",
- "</table>\n",
- "</div>"
- ],
- "text/plain": [
- " data1 data2\n",
- "key2 \n",
- "1Gr 11084.673737 117.485179\n",
- "2Gr 8423.259328 104.486811"
- ]
- },
- "execution_count": 7,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "# データフレームの各列に対して key2 の平均値を算出\n",
- "df.groupby('key2').mean()"
- ]
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "Python 3",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.7.1"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement