如何反转数据框中列的值?
假设你有一个数据表,里面有一列叫“名字”,而且有两行数据。
Input: Name
ABCD
XYZ
Output: Name
DCBA
ZYX
我在网上查过,大家的解决办法是把行和列的顺序调换过来。请问有什么方法可以把数据表中某一列的值反转一下呢?
1 个回答
2
你需要使用一个循环。假设你在处理字符串,你可以使用 apply
方法:
df['Name'] = df['Name'].apply(lambda x: x[::-1])
或者你也可以用列表推导式:
df['Name'] = [x[::-1] for x in df['Name']]
输出结果:
Name
0 DCBA
1 ZYX
如果你处理的内容不仅仅是字符串,那么更安全的做法是先检查一下数据类型:
df['Name'] = df['Name'].apply(lambda x: x[::-1] if isinstance(x, str) else x)
# or
df['Name'] = [x[::-1] if isinstance(x, str) else x for x in df['Name']]