我在 csv 中有一些数据重复,我想创建多行来重复一些列。我正尝试在 Python 中使用 Pandas 来做到这一点。
将以下内容作为MWE。我使用 df = pandas.read_csv('my.csv')
导入我的数据,结果如下所示:
a b c c.1 c.2
1 2 3 4 5
6 7 8 9 0
可以看出,列a 和b 是唯一的,但c 有多个值。我想将 c 值拆分成单独的行,复制 a 和 b,即实现以下目标:
a b c
1 2 3
1 2 4
1 2 5
6 7 8
6 7 9
6 7 0
为了不必键入太多内容,我省略了一个类似重复的 d 列,但该解决方案应该足够通用以适应这种情况。
最佳答案
In [426]: pd.lreshape(df, {'c':df.columns[df.columns.str.match('^c\.?\d?')]})
Out[426]:
a b c
0 1 2 3
1 6 7 8
2 1 2 4
3 6 7 9
4 1 2 5
5 6 7 0
关于python - Pandas 将列重复到新行中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47127940/