python - 使用给定的熊猫列表对 CSV 文件进行排序
问题描述
我有一个包含 2 列的 csv 文件和一个随机包含第一列的所有值的列表。我想对 csv 文件进行排序,就像列表中包含值一样。
CSV 文件:
Name age
---- ----
alice 17
bob 18
carol 19
列表
name = ['bob','carol','alice']
预期输出:
Name age
---- ----
bob 18
carol 19
alice 17
如何用 python pandas 模块做到这一点?
解决方案
您可以将列表转换为熊猫系列(为其分配与您要订购的列相同的名称),然后合并。合并应该是内部、左侧或外部,具体取决于列表和文件的重叠以及您希望如何处理差异
import pandas as pd
df_ages = pd.DataFrame([('alice', 17), ('bob', 18), ('carol', 19)], columns=['Name', 'age'])
name = ['bob','carol','alice']
name = pd.Series(name, name='Name')
df_ages = pd.merge(name, df_ages, how='outer')
结果:
Name age
0 bob 18
1 carol 19
2 alice 17
推荐阅读
- gnupg - 将密钥导入 gpg 是导入但不是真的?
- java - Java 多线程切换上下文 vs 提交新任务以及监控队列的解决方案
- python - 通过邮递员发出请求时出现 Django REST Framework FileParser 错误
- java - 如何在 Java 的单元测试中模拟/分配 LocalDate 变量
- python - Python RegEx 寻找给定单词的组合(而不是排列):有可能吗?
- regex - 从 1 行字符串中选择北向
- python - 如何在 Python 中隐藏时间差金融股市图表?
- pandas - TypeError:“NoneType”对象在检查无类型时不可下标
- java - ReentrantLock 线程随机终止
- bash - 如何使用期望脚本在浏览器上打开网址?