Pythonでのタイムスタンプの比較–パンダ
タイムスタンプを比較するために、インデックス演算子、つまり角かっこを使用できます。まず、必要なライブラリをインポートします-
import pandas as pd
3列のデータフレームを作成する-
dataFrame = pd.DataFrame(
{
"Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW"],
"Date_of_Purchase": [
pd.Timestamp("2021-06-10"),
pd.Timestamp("2021-07-11"),
pd.Timestamp("2021-06-25"),
pd.Timestamp("2021-06-29"),
pd.Timestamp("2021-03-20"),
],
"Date_of_Service": [
pd.Timestamp("2021-11-10"),
pd.Timestamp("2021-12-11"),
pd.Timestamp("2021-11-25"),
pd.Timestamp("2021-11-29"),
pd.Timestamp("2021-08-20"),
]
})
次に、両方の日付列のタイムスタンプを比較してみましょう-
timestamp1_diff = abs(dataFrame['Date_of_Purchase'][0]-dataFrame['Date_of_Service'][0]) timestamp2_diff = abs(dataFrame['Date_of_Purchase'][1]-dataFrame['Date_of_Service'][1])
すべてのタイムスタンプを比較します-
timestamp_diff = abs(dataFrame['Date_of_Purchase']-dataFrame['Date_of_Service'])
例
以下は完全なコードです-
import pandas as pd
# create a dataframe with 3 columns
dataFrame = pd.DataFrame(
{
"Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW"],
"Date_of_Purchase": [
pd.Timestamp("2021-06-10"),
pd.Timestamp("2021-07-11"),
pd.Timestamp("2021-06-25"),
pd.Timestamp("2021-06-29"),
pd.Timestamp("2021-03-20"),
],
"Date_of_Service": [
pd.Timestamp("2021-11-10"),
pd.Timestamp("2021-12-11"),
pd.Timestamp("2021-11-25"),
pd.Timestamp("2021-11-29"),
pd.Timestamp("2021-08-20"),
]
})
print"DataFrame...\n", dataFrame
# compare specific timestamps
timestamp1_diff = abs(dataFrame['Date_of_Purchase'][0]-dataFrame['Date_of_Service'][0])
timestamp2_diff = abs(dataFrame['Date_of_Purchase'][1]-dataFrame['Date_of_Service'][1])
print"\nDifference between Car 1 Date of Purchase and Service \n",timestamp1_diff
print"\nDifference between Car 2 Date of Purchase and Service \n",timestamp2_diff
# compare all timestamps by finding difference
timestamp_diff = abs(dataFrame['Date_of_Purchase']-dataFrame['Date_of_Service'])
print"\nDifference between two Timestamps: \n",timestamp_diff 出力
これにより、次の出力が生成されます-
DataFrame... Car Date_of_Purchase Date_of_Service 0 Audi 2021-06-10 2021-11-10 1 Lexus 2021-07-11 2021-12-11 2 Tesla 2021-06-25 2021-11-25 3 Mercedes 2021-06-29 2021-11-29 4 BMW 2021-03-20 2021-08-20 Difference between Car 1 Date of Purchase and Service 153 days 00:00:00 Difference between Car 2 Date of Purchase and Service 153 days 00:00:00 Difference between two Timestamps: 0 153 days 1 153 days 2 153 days 3 153 days 4 153 days dtype: timedelta64[ns]
-
Python-Pandas DataFrameを日数でグループ化する方法は?
groupby()を使用してPandasDataFrameをグループ化します。グルーパー機能を使用して、使用する列を選択します。以下に示す自動車販売記録の例では、日ごとにグループ化し、登録価格と日間隔の合計を計算します。 groupby()grouperメソッドで頻度を日間隔として設定します。つまり、頻度が7Dの場合、日付列に指定された最終日までの毎月7日の間隔でグループ化されたデータを意味します。 最初に、次が3つの列を持つPandasDataFrameであるとしましょう- import pandas as pd # dataframe with one of the columns
-
Python-Pandas DataFrameを月ごとにグループ化する方法は?
groupbyを使用してPandasDataFrameをグループ化します 。グルーパー機能を使用して、使用する列を選択します。以下に示す自動車販売記録の例では、月ごとにグループ化し、登録価格の合計を毎月計算します。 最初に、次が3つの列を持つPandasDataFrameであるとしましょう- dataFrame = pd.DataFrame( { "Car": ["Audi", "Lexus", "Tesla", "Mercedes&q