03探索データ
numpy、pandasパッケージ、およびデータのインポート
サンプルデータをPandasで並べ替え、昇順を要求
タイタニック号のデータ(trian.csv)を運賃と年齢の2列で総合的に並べ替え(降順に並べ替え)、データから何を見つけることができますか?
Pandasで算術計算を行い、二つのデータFrameデータの加算結果を計算する
2つのDataFrameが加算されると、新しいDataFrameが返され、対応する行と列の値が加算され、対応していないものは空の値NaNになります.
タイタニック号のデータを通じてどのように船の上で最大の家族が何人いるかを計算します
Pandas describe()関数を使用してデータの基本統計を表示することを学ぶ
タイタニック号データの集中運賃、親子の基本統計データをそれぞれ見てみましょう
[1]https://www.cnblogs.com/recoverableTi/p/13526941.html [2]https://blog.csdn.net/weixin_41903171/article/details/108053159 [3]https://nbviewer.jupyter.org/github/andongBlue/hands-on-data-analysis/blob/master/%E7%AC%AC%E4%B8%80%E5%8D%95%E5%85%83%E9%A1%B9%E7%9B%AE%E9%9B%86%E5%90%88/%E7%AC%AC%E4%B8%80%E7%AB%A0%EF%BC%9A%E7%AC%AC%E4%B8%89%E8%8A%82%E6%8E%A2%E7%B4%A2%E6%80%A7%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90.ipynb
import pandas as pd
text = pd.read_csv('train_chinese.csv')
print(text.head())
# ID ...
# 0 1 0 3 ... 7.2500 NaN S
# 1 2 1 1 ... 71.2833 C85 C
# 2 3 1 3 ... 7.9250 NaN S
# 3 4 1 1 ... 53.1000 C123 S
# 4 5 0 3 ... 8.0500 NaN S
#
# [5 rows x 12 columns]
サンプルデータをPandasで並べ替え、昇順を要求
pd.DataFrame() : DataFrame
np.arange(8).reshape((2, 4)) : (2*4), :0,1,2,3 :4,5,6,7
index=[2,1] :DataFrame
columns=['d', 'a', 'b', 'c'] :DataFrame
frame = pd.DataFrame(np.arange(8).reshape((2, 4)),
index=['2', '1'],
columns=['d', 'a', 'b', 'c'])
print(frame)
# d a b c
# 2 0 1 2 3
# 1 4 5 6 7
pd.DataFrame()
:DataFrameオブジェクトを作成するnp.arange(8).reshape((2, 4))
:2次元配列を生成する(2*4)、第1列:0,1,2,3第2列:4,5,6,7 index=['2, 1]
:DataFrameオブジェクトのインデックス列columns=['d', 'a', 'b', 'c']
:DataFrameオブジェクトのインデックス行print(frame.sort_values(by='c', ascending=False))
# d a b c
# 1 4 5 6 7
# 2 0 1 2 3
print(frame)
# d a b c
# 2 0 1 2 3
# 1 4 5 6 7
sort_values
という関数ではbyパラメータが配列する列を指し、ascending
パラメータが配列を指す方法(昇順か降順か)が見られます.#
print(frame.sort_index())
# d a b c
# 1 4 5 6 7
# 2 0 1 2 3
#
print(frame.sort_index(axis=1))
# d a b c
# 2 0 1 2 3
# 1 4 5 6 7
#
frame.sort_index(axis=1, ascending=False)
# d a b c
# 1 4 5 6 7
# 2 0 1 2 3
#
frame.sort_values(by=['a', 'c'])
# a b c d
# 2 1 2 3 0
# 1 5 6 7 4
タイタニック号のデータ(trian.csv)を運賃と年齢の2列で総合的に並べ替え(降順に並べ替え)、データから何を見つけることができますか?
print(text.sort_values(by=[' ', ' '], ascending=False).head(3))
# ID ...
# 679 680 1 1 ... 512.3292 B51 B53 B55 C
# 258 259 1 1 ... 512.3292 NaN C
# 737 738 1 1 ... 512.3292 B101 C
#
# [3 rows x 12 columns]
Pandasで算術計算を行い、二つのデータFrameデータの加算結果を計算する
''' Pandas , DataFrame '''
frame1_a = pd.DataFrame(np.arange(9.).reshape(3, 3),
columns=['a', 'b', 'c'],
index=['one', 'two', 'three'])
print(frame1_a)
# a b c
# one 0.0 1.0 2.0
# two 3.0 4.0 5.0
# three 6.0 7.0 8.0
frame1_b = pd.DataFrame(np.arange(12.).reshape(4, 3),
columns=['a', 'e', 'c'],
index=['first', 'one', 'two', 'second'])
print(frame1_b)
# a e c
# first 0.0 1.0 2.0
# one 3.0 4.0 5.0
# two 6.0 7.0 8.0
# second 9.0 10.0 11.0
print(frame1_a + frame1_b)
# a b c e
# first NaN NaN NaN NaN
# one 3.0 NaN 7.0 NaN
# second NaN NaN NaN NaN
# three NaN NaN NaN NaN
# two 9.0 NaN 13.0 NaN
2つのDataFrameが加算されると、新しいDataFrameが返され、対応する行と列の値が加算され、対応していないものは空の値NaNになります.
タイタニック号のデータを通じてどのように船の上で最大の家族が何人いるかを計算します
''' '''
print(max(text[' '] + text[' ']))
# 10
Pandas describe()関数を使用してデータの基本統計を表示することを学ぶ
''' Pandas describe() '''
frame2 = pd.DataFrame([[1.4, np.nan],
[7.1, -4.5],
[np.nan, np.nan],
[0.75, -1.3]
], index=['a', 'b', 'c', 'd'], columns=['one', 'two'])
print(frame2)
# one two
# a 1.40 NaN
# b 7.10 -4.5
# c NaN NaN
# d 0.75 -1.3
print(frame2.describe())
# one two
# count 3.000000 2.000000
# mean 3.083333 -2.900000
# std 3.493685 2.262742
# min 0.750000 -4.500000
# 25% 1.075000 -3.700000
# 50% 1.400000 -2.900000
# 75% 4.250000 -2.100000
# max 7.100000 -1.300000
タイタニック号データの集中運賃、親子の基本統計データをそれぞれ見てみましょう
''' 、 '''
print(text[' '].describe())
# count 891.000000
# mean 32.204208
# std 49.693429
# min 0.000000
# 25% 7.910400
# 50% 14.454200
# 75% 31.000000
# max 512.329200
# Name: , dtype: float64
print(text[' '].describe())
# count 891.000000
# mean 0.381594
# std 0.806057
# min 0.000000
# 25% 0.000000
# 50% 0.000000
# 75% 0.000000
# max 6.000000
# Name: , dtype: float64
[1]https://www.cnblogs.com/recoverableTi/p/13526941.html [2]https://blog.csdn.net/weixin_41903171/article/details/108053159 [3]https://nbviewer.jupyter.org/github/andongBlue/hands-on-data-analysis/blob/master/%E7%AC%AC%E4%B8%80%E5%8D%95%E5%85%83%E9%A1%B9%E7%9B%AE%E9%9B%86%E5%90%88/%E7%AC%AC%E4%B8%80%E7%AB%A0%EF%BC%9A%E7%AC%AC%E4%B8%89%E8%8A%82%E6%8E%A2%E7%B4%A2%E6%80%A7%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90.ipynb