我正在使用数据科学训练营,目前正在考虑在pandas / jupyter笔记本中合并和排序csv文件,以便创建新的数据帧。我一直遇到的一个问题是,当我尝试将两个非数字对象(例如“城市”,“城市类型” - 城市,郊区,乡村等)分组时,我要么出错,要么被迫创建一个数组。在之前的练习中,数组不是问题,因为我可以解决它们。在这个特定的实例中,我绝对需要使用数组中包含的数据作为散点图。我已经问过教授们如何解决这个问题(但只是得到了b / c它的家庭作业的谨慎回应),经历了无数的饲料,并回顾了我们之前的所有课程,但似乎无法弄明白。那么,有没有办法在pandas中分组两个非数字列而不创建数组?我是新人,一下子被大量的材料击中,感觉我错过了一些基本的东西。非常感谢任何指导。
从上面评论中的屏幕截图中,我看到您的pyber_df.groupby("City")["Type"].unique()
调用正在为每个城市生成一个成员列表,而不是仅仅为您提供每种城市类型的字符串表示。
如果您可以安全地假设每个城市只有一种类型,那么您最好的选择是用unique
替换first
:
city_type = pyber_df.groupby("City")["Type"].first()