python - 在python中解析CSV的特定列
问题描述
所以我有这个 CSV,我想做以下事情:
原始数据:
解析数据:
因此,换句话说,如果一列有逗号,那么我想创建一个只有一个值的新列,并删除具有多个值的列。
例如:N2 有 I1、I3 和 I4。因此,新数据获得 3 列,仅包含一个值。
我想让它动态化,以反映所有排列。就像 N3 有 2 个地方和 2 个项目一样。
我正在尝试使用 python 的 pandas 来做到这一点。一些帮助将不胜感激。
解决方案
这是另一种选择:
df['Place'] = df['Place'].str.split(',')
df['Item'] = df['Item'].str.split(',')
exploded = pd.DataFrame([
a + [p, t] for *a, P, T in df.values
for p in P for t in T
], columns=df.columns)
和输出:
Name Place Item
0 N1 P1 I1
1 N2 P2 I1
2 N2 P2 I3
3 N2 P2 I4
4 N3 P2 I2
5 N3 P2 I5
6 N3 P3 I2
7 N3 P3 I5
推荐阅读
- java - 没有值的 Optional 的 toString 被破坏
- python - Numpy:如何快速替换矩阵中的相等值?
- shell - 删除两组字符之间的所有文本
- highcharts - 组织结构图双色一盒
- google-data-studio - 如果单元格中的字符串包含 X,则创建自定义维度
- ruby-on-rails - 在 mina deploy rails app 后文件夹消失时,在哪里保存独角兽 PIDS 和套接字路径
- python - SpaCy 括号标记化:(LRB,RRB)对未正确标记
- java - 如何在无模式 JDialog 上方显示 JOptionPane
- .net - 泛型声明一个类
- javascript - 如何使用 jquery 定位最后一个可见元素类型