【发布时间】:2026-02-23 01:50:01
【问题描述】:
我有一个包含 3 列的 csv 文件,其中第 3 列的每一行都有值列表。从下面的表结构可以看出
Col1,Col2,Col3
1,a1,"['Proj1', 'Proj2']"
2,a2,"['Proj3', 'Proj2']"
3,a3,"['Proj4', 'Proj1']"
4,a4,"['Proj3', 'Proj4']"
5,a5,"['Proj5', 'Proj2']"
每当我尝试读取此 csv 时,Col3 都会被读取为 str 对象而不是列表。我试图更改该列的 dtype 以列出但得到“属性错误”,如下所示
df = pd.read_csv("inputfile.csv")
df.Col3.dtype = list
AttributeError Traceback (most recent call last)
<ipython-input-19-6f9ec76b1b30> in <module>()
----> 1 df.Col3.dtype = list
C:\Python27\lib\site-packages\pandas\core\generic.pyc in __setattr__(self, name, value)
1953 object.__setattr__(self, name, value)
1954 except (AttributeError, TypeError):
-> 1955 object.__setattr__(self, name, value)
1956
1957 #----------------------------------------------------------------------
AttributeError: 无法设置属性
如果你能指导我如何去做,那就太好了。
【问题讨论】:
-
你能给我们看一个你的csv的例子吗(不是图片),复制粘贴你的csv的前几行。
-
标准警告:pandas 并不真正支持非标量值。您可以使用它们,因为它们有时在中间步骤中很方便,但使用它们很不方便,而且在不久的将来也不会改变。
-
你想对这些值做什么?
-
@AnandSKumar 从我的 csv 复制粘贴的值
-
@PadraicCunningham 不,最终值将是一个字符串。我的需求 PFB 示例说明 Input Row:1,a1,"['Proj1', 'Proj2']" Output Rows: 1,a1,"Proj1" 1,a1,"Proj2"