簡體   English   中英

如何從數據集中的多個列中去除前導零?

[英]How can I strip leading zeros from multiple columns in a dataset?

我想從數據集中的兩列中刪除前導零,如果可能的話,在一行代碼中,但我不知道如何寫出來。 我有這個工作單列。

應用正則表達式之前的數據集:

print(excl_merged.head(10))
           Subnet             Mask
0  10.15.176.000  255.255.255.128
1  10.15.177.000  255.255.255.192
2  10.15.178.064  255.255.255.192
3  10.15.179.000  255.255.255.128
4  10.15.180.000  255.255.255.000
5  10.15.181.000  255.255.255.224
6  10.15.182.000  255.255.254.000
7  10.15.183.000  255.255.254.000
8  10.15.184.000  255.255.255.000
9  10.15.185.000  255.255.255.000

之后將正則表達式應用於單列和數據集視圖:

excl_merged["Subnet"] = excl_merged["Subnet"].str.replace(r"\b0+\B", "", regex=True)
print(excl_merged.head(10))

 Subnet             Mask
0   10.15.176.0  255.255.255.128
1   10.15.177.0  255.255.255.192
2  10.15.178.64  255.255.255.192
3   10.15.179.0  255.255.255.128
4   10.15.180.0  255.255.255.000
5   10.15.181.0  255.255.255.224
6   10.15.182.0  255.255.254.000
7   10.15.183.0  255.255.254.000
8   10.15.184.0  255.255.255.000
9   10.15.185.0  255.255.255.000

你很接近,試試這個:

Subnet = ["10.15.183.000",  "10.15.184.000", "10.15.185.224"] 
Mask = ["255.255.254.000", "255.255.255.064", "255.255.255.000"]
excl_merged = pd.DataFrame({"Subnet":Subnet, "Mask":Mask})

### Relevant code
excl_merged[["Subnet", "Mask"]] = excl_merged[["Subnet", "Mask"]].replace(r"\b0+\B", "", regex=True)

輸出:

Subnet          Mask
10.15.183.0     255.255.254.0
10.15.184.0     255.255.255.64
10.15.185.224   255.255.255.0

暫無
暫無

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

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