首页 > 解决方案 > 在 Python 中使用 Pandas 确定奇偶值

问题描述

我有以下一些 IP 地址,我想根据它们的最后一位数字对它们进行分类。

IPv4 地址由四个数字组成:

现在我想引用 IP 地址的最后一位数字,如果它是[Odd]用奇数实现的相关列,如果是[Even]它,它会用偶数实现。

IP Address          
192.168.1.1         #last digit is 1 and consider it as odd
192.168.1.2         #last digit is 2 and even
192.168.152.200     #last digit is 200 and is even
192.168.54.98       #last digit is 98 and is even
192.168.98.93       #last digit is 93 and is odd
 .....
 ......

预期结果:

IP Address                 Status
192.168.1.1                Odd
192.168.1.2                Even
192.168.152.200            Even
192.168.54.98              Even
192.168.98.93              Odd
........ 
........

标签: pythonpandaspython-2.7dataframe

解决方案


数据:

df = pd.DataFrame({"IP Address" : 
["192.168.1.1",
"192.168.1.2",
"192.168.152.200",
"192.168.54.98",
"192.168.98.93"]})

东风:

        IP Address
0      192.168.1.1
1      192.168.1.2
2  192.168.152.200
3    192.168.54.98
4    192.168.98.93
df['New-variable'] = df['IP Address'].apply(lambda x:"Odd" if int(x.split(".")[-1]) % 2 else  "Even")

东风:

        IP Address New-variable
0      192.168.1.1          Odd
1      192.168.1.2         Even
2  192.168.152.200         Even
3    192.168.54.98         Even
4    192.168.98.93          Odd

推荐阅读