我如何在线串上运行50/50概率表达式,并用“或”分隔两种可能性?

问题描述 投票:0回答:1

我正在研究一个地理数据库(熊猫),其中包含有关社交媒体用户及其所在城市的信息。带有其所属市镇的列有524个市镇。其中有453个以线串形式有两个自治市; 'City1 or City2'

two_cities = [s for s in gdf['home_municipality'] if " or " in s]
print(two_cities)

到目前为止,我已经使用上述代码创建了一个列表,其中仅包含带有“或”的值。我的问题是;如何在列表项上以50/50的概率随机选择一个市镇分配给每个用户?

这是列表项的摘录:

['Vaasa or Mustasaari', 'Helsinki or Espoo', 'Vantaa or Turku', 'Helsinki or Espoo', 'Paimio or Turku', 'Turku or Helsinki', 'Helsinki or Espoo']
python pandas probability geopandas boolean-operations
1个回答
0
投票

仅以您的一个字符串'Vaasa or Mustasaari'为例,您可以将其转换为两个城市的列表,然后使用random.randit随机选择0到1之间的整数并将其用作索引从清单中选取的城市。由于只有两个整数是可能的,所以等于50/50的机会。

random.randit

输出:

import random

city_string = 'Vaasa or Mustasaari'
cities = city_string.split(' or ')
user_city = cities[random.randint(0, 1)]
print(user_city)
© www.soinside.com 2019 - 2024. All rights reserved.