我正在开发一个地理数据框架(panda(,其中包含社交媒体用户及其家乡的信息。与他们的家乡直辖市的纵队有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']
仅以其中一个字符串'Vaasa or Mustasaari'
为例,您就可以将其转换为两个城市的列表,然后使用random.randit
随机选择一个0到1之间的整数,并将其用作要从列表中获取的城市的索引。由于只有两个整数是可能的,这相当于50/50的机会。
import random
city_string = 'Vaasa or Mustasaari'
cities = city_string.split(' or ')
user_city = cities[random.randint(0, 1)]
print(user_city)
输出:
>>> user_city = cities[random.randint(0, 1)]
>>> print(user_city)
Mustasaari
>>> user_city = cities[random.randint(0, 1)]
>>> print(user_city)
Vaasa