次の Python コードの出力はどれでしょうか?
Python コード:
import pandas as pd
dates = pd.date_range(
start='2023-01-01',
periods=5, freq='D')
data = [1, 2, 3, 4, 5]
df = pd.DataFrame(
data,
index=dates,
columns=['A'])
print(df.cumsum())
回答の選択肢:
(A) 各日の値
(B) 各日の値の和
(C) 各日の値の累積和
(D) 各日の値の二乗和
出力例:
A
2023-01-01 1
2023-01-02 3
2023-01-03 6
2023-01-04 10
2023-01-05 15
正解: (C)
回答の選択肢:
(A) 各日の値
(B) 各日の値の和
(C) 各日の値の累積和
(D) 各日の値の二乗和
このコードは、特定の期間(ここでは日ごと)に測定される時系列データの累積和を計算しています。
import pandas as pd
dates = pd.date_range(
start='2023-01-01',
periods=5, freq='D')
data = [1, 2, 3, 4, 5]
df = pd.DataFrame(
data,
index=dates,
columns=['A'])
print(df.cumsum())
詳しく説明します。
‘2023-01-01’から始まる日単位の日付範囲を5期間作ります。
dates = pd.date_range(
start='2023-01-01',
periods=5, freq='D')
dates
に格納されているデータは次のようになっています。
DatetimeIndex(['2023-01-01', '2023-01-02', '2023-01-03', '2023-01-04',
'2023-01-05'],
dtype='datetime64[ns]', freq='D')
1~5までの整数のリストをデータとして、上で作成した日付をインデックスとしてデータフレームを作成します。このデータフレームは、各日付に対する一意の数値を持っています。
data = [1, 2, 3, 4, 5]
df = pd.DataFrame(
data,
index=dates,
columns=['A'])
df
に格納されているデータは次のようになっています。
A
2023-01-01 1
2023-01-02 2
2023-01-03 3
2023-01-04 4
2023-01-05 5
データフレームの`cumsum()`メソッドを用いてデータの累積和を計算します。この操作により、各日付までのデータの和を求めることができます。
print(df.cumsum())
A
2023-01-01 1
2023-01-02 3
2023-01-03 6
2023-01-04 10
2023-01-05 15
各日付までの累積和を持つ新たなデータフレームが表示されます。このような累積和は、特定の期間における値の変化をモニタリングするためによく使われます。