Pandas数据框。5个单元格的列输出值不变,然后输出改变,5个单元格的输出值又保持不变,如此反复。

问题描述 投票:0回答:1

我对python和pandas很陌生。能否有人帮我解决下面的问题?

在Excel中,我有以下内容。

Excel的输出

    MOD(A1,5)+1日期收盘固定百分比=IF(B2=5,D2*E2,F3)0 1 12052020 104.1 1.1 108% 112.41 2 11052020 103.5 1.1 109% 112.42 3 10052020 100. 5 1.1 112% 112.43 4 09052020 100.1 1.1 112% 112.44 5 08052020 102.2 1.1 110% 112.45 1 07052020 102.5 1.1 112% 114.56 2 06052020 103.2 1. 1 111% 114.57 3 05052020 108.7 1.1 105% 114.58 4 04052020 106.7 1.1 107% 114.59 5 03052020 104.1 1.1 110% 114.510 1 02052020 102.1 1.1 118% 120. 711 2 01052020 102.6 1.1 118% 120.712 3 30042020 106.5 1.1 113% 120.713 4 29042020 100.5 1.1 120% 120.714 5 28042020 109.8 1.1 110% 120.7

当我使用数据框时,请问我用什么方法才能得到最后一列中显示的输出?

基本上,我取每5个收盘价*固定值,第1-5个单元格的数值相同。

第6-9单元格将被填入第9个收盘价*固定值,如此等等。

我希望它是清楚的,因为我描述的方式,是非常复杂的。

先谢谢你

excel pandas if-statement window-functions shift
1个回答
0
投票
import pandas as pd
df = pd.read_csv("D:\<YOUR_DATA>.csv", parse_dates=["Date"])
df_5th = df.loc[df['MOD']==5]
df['blah']=df_5th['Closing'] * df_5th['Fixed']
df['blah']=df['blah'].fillna(method='bfill')
© www.soinside.com 2019 - 2024. All rights reserved.