Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでプログラムを作成して、日付列を特定のデータフレームの複数の列の日、月、年に分割します


データフレームがあり、日付、月、年の列の結果が

であると仮定します。
      date  day  month  year
0 17/05/2002 17   05    2002
1 16/02/1990 16   02    1990
2 25/09/1980 25   09    1980
3 11/05/2000 11   05    2000
4 17/09/1986 17   09    1986
>

これを解決するには、以下の手順に従います-

解決策

  • 日付のリストを作成し、データフレームに割り当てます。

  • 「/」区切り文字内のstr.split関数をdf[‘date’]列に適用します。結果をdf[["day"、 "month"、"year"]]に割り当てます。

理解を深めるために、次のコードを確認してみましょう-

import pandas as pd
df = pd.DataFrame({
      'date': ['17/05/2002','16/02/1990','25/09/1980','11/05/2000','17/09/1986']
   })
print("Original DataFrame:")
print(df)
df[["day", "month", "year"]] = df["date"].str.split("/", expand = True)
print("\nNew DataFrame:")
print(df)

出力

Original DataFrame:
     date
0 17/05/2002
1 16/02/1990
2 25/09/1980
3 11/05/2000
4 17/09/1986
New DataFrame:
      date  day  month year
0 17/05/2002 17    05 2002
1 16/02/1990 16    02 1990
2 25/09/1980 25    09 1980
3 11/05/2000 11    05 2000
4 17/09/1986 17    09 1986

  1. 特定のDataFrameを名前列で降順で並べ替えるPythonプログラムを作成します

    入力 − サンプルのDataFrameがであると仮定します。   Id Name 0 1 Adam 1 2 Michael 2 3 David 3 4 Jack 4 5 Peter 出力 − その後、要素を降順で並べ替えます。   Id Name 4 5 Peter 1 2 Michael 3 4 Jack 2 3 David 0 1 Adam 解決策 これを解決するために、以下のアプローチに従います。 DataFrameを定義する Name列に基づいてDataFramesort_valuesメソッドを適用し、引数ascending =Falseを追

  2. Pythonでプログラムを作成して、特定の日付シリーズの年の日を印刷します

    入力 − シリーズがあり、特定の日付範囲からその年の日を見つけたとします。 解決策 これを解決するために、以下のアプローチに従います。 シリーズを定義する date_rangeを「2020-01-10」として5つのピリオドで設定します。以下に定義されています pd.date_range('2020-01-10',periods=5) Series.dt.dayofyearを使用して日を検索します。 例 完全な実装を見て、理解を深めましょう- import pandas as pd date = pd.date_range('2020-0