我有一个数据帧,我正试图从中删除[
和]
。看起来是这样的:
dftest = pd.DataFrame({'col1': ['A', 'B'],
'col2': ['[1, 5, 30]', '[1, 10, 20]']})
我可以使用以下方法移除[
:
dftest = dftest.replace({'\[':''}, regex = True)
但是,当我对]
尝试相同的操作时,没有一个被删除:
dftest = dftest.replace({'\]':''}, regex = True)
如何删除最后的]
?为什么它的工作原理与[
不同?期望输出:
dftest = pd.DataFrame({'col1': ['A', 'B'],
'col2': ['1, 5, 30', '1, 10, 20']})
在Jupyter实验室的一个新单元中运行这个精确的东西会返回一个没有变化的数据帧:
dftest = pd.DataFrame({'col1': ['A', 'B'],
'col2': ['[1, 5, 30]', '[1, 10, 20]']})
dftest = dftest.replace({'\]':''}, regex = True)
但是,运行这个会取代[
:
dftest = pd.DataFrame({'col1': ['A', 'B'],
'col2': ['[1, 5, 30]', '[1, 10, 20]']})
dftest = dftest.replace({'\]':''}, regex = True)
也许是我的Jupyter实验室有问题??下面是这两个代码段的截图及其输出,以防有所帮助(我想,为了证明我的笔记本上发生了一些奇怪的事情):
还有另一种解决方案,使用
literal_eval
库中的ast
代码:
输出:
例如:
输出:
相关问题 更多 >
编程相关推荐