第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

熊貓獲得連續(xù)周訂單的計數(shù) null

熊貓獲得連續(xù)周訂單的計數(shù) null

慕絲7291255 2022-07-12 14:56:12
我有一個如下所示的數(shù)據(jù)框。我想找出從上周(202008 年)開始按國家和產(chǎn)品的連續(xù)周數(shù)下降。import pandas as pdraw_data = {'Country': ['UK','UK','UK','UK','UK','UK','UK','UK','UK','UK','UK','UK','US','US','UK','UK'],            'Product':['A','A','A','A','A','A','A','A','B','B','B','B','C','C','D','D'],            'Week': [202001,202002,202003,202004,202005,202006,202007,202008,202001,202006,202007,202008,202006,202008,202007,202008],    'Orders': [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}df = pd.DataFrame(raw_data, columns = ['Country','Product','Week','Orders'])df2 = df.pivot_table(index=['Country','Product'], columns='Week',values='Orders', aggfunc='size').reset_index()我想在輸出下面檢查它從上周開始的連續(xù)數(shù)周它為空。
查看完整描述

1 回答

?
MYYA

TA貢獻1868條經(jīng)驗 獲得超4個贊

利用:


#remove reset_index()

df2 = df.pivot_table(index=['Country','Product'],

                     columns='Week',

                     values='Orders', 

                     aggfunc='size')


#compare if non missing values from back

a = df2.notna().iloc[:, ::-1]

#running sum

b = a.cumsum(axis=1)

#counter only for consecutive values

df = b-b.mask(a).ffill(axis=1).fillna(0).astype(int)


#convert all another consecutive values to 0 and get max for count last consecutive vals

val = df.mask(df.eq(0).cumsum(axis=1).ne(0), 0).max(axis=1).astype(str) 

#if 1 value different text

df2['Text'] = np.where(val != '1', 

                       'Last ' + val + ' consecutive weeks is not null', 

                       'Last ' + val + ' week is not null')

#connvert MultiIndex to columns

df2 = df2.reset_index()

print (df2)

Week Country Product  202001  202002  202003  202004  202005  202006  202007  \

0         UK       A     1.0     1.0     1.0     1.0     1.0     1.0     1.0   

1         UK       B     1.0     NaN     NaN     NaN     NaN     1.0     1.0   

2         UK       D     NaN     NaN     NaN     NaN     NaN     NaN     1.0   

3         US       C     NaN     NaN     NaN     NaN     NaN     1.0     NaN   


Week  202008                                  Text  

0        1.0  Last 8 consecutive weeks is not null  

1        1.0  Last 3 consecutive weeks is not null  

2        1.0  Last 2 consecutive weeks is not null  

3        1.0               Last 1 week is not null  


查看完整回答
反對 回復 2022-07-12
  • 1 回答
  • 0 關(guān)注
  • 91 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號