簡體   English   中英

如何在 pandas dataframe 中添加重復值的列?

[英]How to add a column in a pandas dataframe with values that repeat?

如果我有一個 pandas dataframe 看起來像這樣:

     X [ m ]  Y [ m ]  Z [ m ]
0         1     1      0.0
1         2     0.5    0.1
2         3     2      0.3
3         4     1      0.4
4         5     3      0.5 
5         1     4      0.6
6         2     1.5    0.8
7         3     6      1.0
8         4     3      1.2
9         5     4      1.5
...

我將如何添加看起來像這樣的第四列 (Z_2)(僅包括 0.5 跳躍的值):

     X [ m ]  Y [ m ]  Z [ m ]  Z_2 [ m ]
0         1     1      0.0      0.0
1         2     0.5    0.1      0.0
2         3     2      0.3      0.5
3         4     1      0.4      0.5
4         5     3      0.5      0.5
5         1     4      0.6      0.5
6         2     1.5    0.8      1.0 
7         3     6      1.0      1.0
8         4     3      1.2      1.0
9         5     4      1.5      1.5 
...

你可以試試:

df["Z_2"] = (df["Z"] // 0.5) * 0.5

如果你在談論 Z 列中只有 0.5 個“跳躍”。

你可以嘗試這樣的事情:

df["Z_2"] = (df["Z"] % .5 == 0).cumsum() * .5

這里df["Z"] %.5 == 0找到df["Z"]中位於 .5 邊界上的值, cumsum只會在遇到True時加 1。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM