亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如何按特定值創建一列升序數字?

如何按特定值創建一列升序數字?

九州編程 2023-04-25 17:46:34
我如何在 pandas 中創建一個列表或列,該列中的數字以 1 為步長增加,當它達到某個數字(比方說 5)時,它返回 1 并重復此過程?我的腳本如下所示,它不會按預期工作:i = 0lista = []for i in range(50):        i += 1        if i == 5:            continue        lista.append(i)print(i)# what I wanted from this code is like :12345...# repeat printing 1-5 for 10 times
查看完整描述

2 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

首先在 pandas 中使用循環是反模式,主要是如果存在矢量化解決方案,這里numpy.tile

df = pd.DataFrame({'col': np.tile(np.arange(1, 6), 10)})

print (df.head(12))

? ? col

0? ? ?1

1? ? ?2

2? ? ?3

3? ? ?4

4? ? ?5

5? ? ?1

6? ? ?2

7? ? ?3

8? ? ?4

9? ? ?5

10? ? 1

11? ? 2


查看完整回答
反對 回復 2023-04-25
?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

以我想到的最簡單的方式:


lista = []

for i in range(50):

    lista.append(i%5+1)

print(lista)

這也可以寫成列表理解,這只是一行代碼,而且更酷;)


lista = [ i%5+1 for i in range(50) ]


查看完整回答
反對 回復 2023-04-25
  • 2 回答
  • 0 關注
  • 106 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號