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

Pandas DataFrameの列をシフトする方法は?


Pandasのshift()メソッドを使用すると、DataFrame全体を書き直すことなくDataFrameの列をシフトできます。 shift()は次のパラメータを取ります

shift(self, periods=1, freq=None, axis=0, fill_value=None)
  • 期間 シフトする期間の数。負の数を取ることもできます。
  • ブール値を取ります。インデックスをシフトする場合は0、列をシフトする場合は1
  • fill_value 不足している値を置き換えます。

例を見て、この shift()の使用方法を見てみましょう。 メソッド。

ステップ

  • 2次元で、サイズが変更可能で、潜在的に異種の表形式データdfを作成します。
  • 入力DataFrame、dfを出力します。
  • 列を選択し、 df ["column_name] =df.column_name.shift()を使用して列をシフトします
  • 更新されたDataFrameを印刷します。

import pandas as pd

df = pd.DataFrame(
   dict(
      name=['John', 'Jacob', 'Tom', 'Tim', 'Ally'],
      marks=[89, 23, 100, 56, 90],
      subjects=["Math", "Physics", "Chemistry", "Biology", "English"]
   )
)

print "Input DataFrame is:\n", df

df["name"] = df.name.shift(1)
print "After shifting column name by 1:\n", df

df["marks"] = df.marks.shift(2)
print "After shifting column marks by 2:\n", df

df["subjects"] = df.subjects.shift(-1)
print "After shifting column subjects by -1:\n", df

出力

Input DataFrame is:
     name   marks   subjects
0    John    89         Math
1   Jacob    23      Physics
2     Tom   100    Chemistry
3     Tim    56      Biology
4    Ally    90      English

After shifting column name by 1:
     name   marks   subjects
0     NaN    89         Math
1    John    23      Physics
2   Jacob   100    Chemistry
3     Tom    56      Biology
4     Tim    90      English

After shifting column marks by 2:
     name   marks   subjects
0     NaN    100       Math
1    John    100    Physics
2   Jacob     89  Chemistry
3     Tom     23    Biology
4     Tim    100    English

After shifting column subjects by -1:
     name   marks   subjects
0     NaN   100      Physics
1    John   100    Chemistry
2   Jacob    89      Biology
3     Tom    23      English
4     Tim   100          NaN

  1. MatplotlibでPandasデータフレームをプロットする方法は?

    Matplotlibを使用して、Pandas DataFrameで折れ線グラフ、円グラフ、ヒストグラムなどをプロットできます。このためには、PandasとMatplotlibライブラリをインポートする必要があります- import pandas as pd import matplotlib.pyplot as plt プロットを始めましょう- 折れ線グラフ 例 以下はコードです- import pandas as pd import matplotlib.pyplot as plt # creating a DataFrame with 2 columns dataFrame = pd

  2. Python Pandasでデータフレーム列の値をX軸ラベルとして設定するにはどうすればよいですか?

    Python Pandasでデータフレーム列の値をX軸ラベルとして設定するには、 xticksを使用できます。 plot()の引数で メソッド。 ステップ 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。 column1キーのパンダを使用してデータフレームを作成します 。 plot()を使用してPandasデータフレームをプロットします X軸の列としてcolumn1を使用するメソッド。 図を表示するには、 show()を使用します メソッド。 例 import pandas as pd from matplotlib impo