2017-09-05 26 views
0

的关键。例如可以说我有n套这样的:会员一组/列表,在Python

states1 = {"AL","AZ","CA"} 
states2 = {"CO","NJ","NY"} 
states3 = {"GA","IN","OK"} 
... 

集是不相交的。

我有一个熊猫数据框,它有一列“状态”。如果“状态”在states1,y,如果在states2等等,其中每个集合对应于一个值,我想创建一个新的列“级别”,其值将为x

有没有简单的方法来做到这一点?我能想到的最好方法是将这些集合声明为frozensets并创建一个包含这些集合作为关键字的字典。然后我想我可以遍历这个词典的所有关键字,并检查每个集合的状态成员并选择相应的值。

回答

3

由于集合不相交,你可以创建这样一个字典:

{"AL": x, "AZ": x, "CA": x, "CO": y, "NJ": y, "NY": y, ...} 
+0

哈,这是真的。哎呦!谢啦。 – user4505419