Python 使用不同的列值重复数据帧
我有以下数据框,需要为一组值重复这些值。也就是说Python 使用不同的列值重复数据帧,python,pandas,Python,Pandas,我有以下数据框,需要为一组值重复这些值。也就是说 test3 = pd.DataFrame(data={'x':[1, 2, 3, 4, pd.np.nan], 'y':['a', 'a', 'a', 'b', 'b']}) test3 x y 0 1 a 1 2 a 2 3 a 3 4 b 4 NaN b 我需要做一些类似的事情,但更有效: test3['group'] = np.NaN groups = ['a', 'b'] dfs = [] for g
test3 = pd.DataFrame(data={'x':[1, 2, 3, 4, pd.np.nan], 'y':['a', 'a', 'a', 'b', 'b']})
test3
x y
0 1 a
1 2 a
2 3 a
3 4 b
4 NaN b
我需要做一些类似的事情,但更有效:
test3['group'] = np.NaN
groups = ['a', 'b']
dfs = []
for group in groups:
temp = test3.copy()
temp['group'] = group
dfs.append(temp)
pd.concat(dfs)
即,预期输出为:
x y group
0 1 a a
1 2 a a
2 3 a a
3 4 b a
4 NaN b a
0 1 a b
1 2 a b
2 3 a b
3 4 b b
4 NaN b b
这看起来对我很有效。你到底希望有什么不同?@tnknapp更高效的东西,也许是矢量化的。