[英]How to ffill() the rows in every nth column in Pandas?
我有一個包含 400 多列的表,我想根據第一個值每隔三列“ffill()”一次。
下面的數據是我的代碼的結果:
import pandas as pd
import os
cwd = os.getcwd()
df = pd.read_excel( cwd + '/FILES/BH.xlsx' , skiprows=9)
df = df.drop(columns = ['Unnamed: 0', 'Unnamed: 1','Unnamed: 2','Unnamed: 3'])
df= df.T
df[0] = df[0].ffill()
df= df.T
print(df)
我的桌子
我的預期結果
這是我唯一的問題。 根據 Top 上的第一個值,每三列 'ffill()'
我已經在這里檢查了一些樣本,但其中大部分都是硬編碼的
試試這個命令:
df[list(df.columns)[2::3]] = df[list(df.columns)[2::3]].iloc[0]
順便說一句,ffill() 僅填充列中缺失的/無值。 這等同於 fillna(method="ffill")。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.