考虑下面的熊猫数据框:就地适用于大熊猫的列数据帧满足条件
df = pd.DataFrame({'t': [1,2,3], 'x1': [4,5,6], 'x2': [7,8,9]})
>>> print(df)
t x1 x2
0 1 4 7
1 2 5 8
2 3 6 9
我想申请一个函数(比如乘以2),以这些列包含字符“X”
名df.filter(regex='x').apply(lambda c: 2*c)
,但不到位:
这可以这样做。我的解决方案是:
tmp = df.filter(regex='x')
tmp = tmp.apply(lambda c: 2*c)
tmp['t'] = df['t']
df = tmp
它增加了更改列的顺序问题。有没有更好的办法?
我只是投了你的问题......你现在有足够的代表处投自己。随意投票您接受的答案。 – piRSquared