Python 跨多列从字符串值中剥离字符
我的问题是如何在一个数据帧中跨多个列替换/删除字符串中的某些字符?在我的例子中,它是前三个字符 基本上,我有一些列,其中包含一项调查的答案,如下所示:Python 跨多列从字符串值中剥离字符,python,string,python-2.7,strip,Python,String,Python 2.7,Strip,我的问题是如何在一个数据帧中跨多个列替换/删除字符串中的某些字符?在我的例子中,它是前三个字符 基本上,我有一些列,其中包含一项调查的答案,如下所示: A B C D a. w c. y b. x d. z a. w c. y b. x d. z a. w c. y b. x d. z >>> col1 = ['a. w','b. y','c. x'] >>> co
A B C D
a. w c. y b. x d. z
a. w c. y b. x d. z
a. w c. y b. x d. z
>>> col1 = ['a. w','b. y','c. x']
>>> col2 = ['a. w','b. y','c. x']
>>> df=[col1,col2]
>>> result = []
>>> for x in df : result.append(map(lambda y : y[3:],x))
>>> result
[['w', 'y', 'x'], ['w', 'y', 'x']]
我想做的是去掉答案的参考字符,只留下下面的答案:
A B C D
w y x z
w y x z
w y x z
我一直在尝试使用一个列列表,我希望这样做,然后去除前三个字符(在实际答案之前有空格)。它适用于数据框中的单个列,但不适用于多个列:
cols = ['A','B','C']
df[cols] = df[cols].map(lambda x: str(x)[3:])
如果您对此有任何建议,我们将不胜感激
*csv文件是使用pandas创建数据帧读取的我不确定我是否理解您的问题,但我假设您会问这样的问题:
A B C D
a. w c. y b. x d. z
a. w c. y b. x d. z
a. w c. y b. x d. z
>>> col1 = ['a. w','b. y','c. x']
>>> col2 = ['a. w','b. y','c. x']
>>> df=[col1,col2]
>>> result = []
>>> for x in df : result.append(map(lambda y : y[3:],x))
>>> result
[['w', 'y', 'x'], ['w', 'y', 'x']]