python - 按另一个列表的顺序对齐三列 DataFrame
问题描述
我有一个名称列表的熊猫数据框,其坐标如下:
name1 3 100
name2 5 4
name3 7 5
...
name88 100 300
name21 30 40
我有另一个列表,它是一个单列系列,只有特定顺序的名称
name3
name10
name2
name6
...
name30
这两个数据帧的行数相同,但我需要重新排序第一个数据帧,以便名称的顺序与第二个数据帧的顺序相匹配。
我有但未能实现的想法是使用 pandas groupby 函数,并使用它根据第二个数据帧对第一个数据帧进行分组。
但任何想法都会有所帮助。
解决方案
假设您的数据框中的名称列被调用Name
,而您的其他系列被调用names
。那么这应该这样做:
df = df.set_index('Name').reindex(index=names).reset_index()
推荐阅读
- arrays - swift中的迭代器正在跳过元素?
- javascript - 在输入框上键入时如何过滤列表选项?
- c# - 试图引用一个引用了 NLog.dll 获取异常的 dll
- r - 来自 R 中不同模型的拟合值
- javascript - d3.scale.category20() 给出 Uncaught TypeError: Cannot read property 'category20' of undefined
- java - 如果使用 WebChromeClient 点击了 market:// 链接,则打开 Play 商店
- hyperledger-composer - 启动时作曲家-游乐场EACCES错误
- python - 不正确的 Python Matplotlib 极坐标图
- python - 由于“”,python字典中的关键错误
- python - json GPS坐标变换