当前位置: 首页 > 知识库问答 >
问题:

如何将DataFrame保存为列表而不是字符串[重复]

童琪
2023-03-14

我有这个pd。创建DataFrame()。我想创建一个. csv,它保存如下

                                                         0  1
0        [15921, 10, 82, 22, 202973, 368, 1055, 3135, 1...  0
1        [609, 226, 413, 363, 211, 241, 988, 80, 12, 19...  0
2        [22572, 3720, 233, 13, 827, 710, 512, 354, 1, ...  0
3                             [345, 656, 25, 2589, 6, 866]  0
4                                [29142, 8, 4141, 456, 24]  0
                                                   ... ..
1599995                         [256, 8, 80, 110, 25, 152]  4
1599996  [609039, 22, 129, 184, 163, 9419, 769, 358, 10...  4
1599997                       [140, 5715, 6540, 294, 1552]  4
1599998  [59, 22771, 189, 387, 4483, 13, 10305, 112231,...  4
1599999                [59, 15833, 200370, 609041, 609042]  4

但是通过这样做

data.to_csv("foo.csv", index=True)

问题是每个列表现在都保存为str。例如,第3行是

"[345, 656, 25, 2589, 6, 866]"

对于那些怀疑论者,我尝试了type(row 3),它是str。第2列工作正常。

如何保存为list每行,而不是str?也就是说,我如何保存所有行的col1作为DataFrame而不是str

共有1个答案

汪兴为
2023-03-14

试试这个:

import pandas as pd

df = pd.DataFrame({'a': ["[1,2,3,4]", "[6,7,8,9]"]})
df['b'] = df['a'].apply(eval)
print(df)

列b中的数据现在是一个数组

           a             b
0  [1,2,3,4]  [1, 2, 3, 4]
1  [6,7,8,9]  [6, 7, 8, 9]
 类似资料:
  • 我想将pandas数据帧保存为csv文件,问题是要将np.array转换为字符串。 我想将数组保存为数组,但在文档中找不到任何有用的内容。 解数独=[123345894324321321](整数列表) n_splits=3(整数) 最终结果应该是: [123 345 894 324 321 321] 1,[123 345 894 324 321 321] 3,[123 345 894 324 32

  • 从数据框列中删除字符串列表,如我的代码所示: 我的名单上会有 非常感谢。

  • 我不知道如何使用来实现拆分行单元格的目标。我可以使用添加一个新列,并用填充它。有什么想法吗?

  • 我使用DocumentBuilderFactory创建XML文件,如下所示:如何在Java中创建具有特定结构的XML文件。 我想将结果存储为java字符串,而不是将其保存到文件中。如何实现这一点。 重复:如何转换组织。w3c。多姆。文档对象到字符串?

  • 我对任何编程都非常陌生,所以请原谅我的无知,因为我不知道如何做一些看起来很简单的事情。 我所要做的就是获取任何字符串数组(称之为名称),比如: 并将其从列表中删除,并将其转换为字符串: 我似乎无法理解这一点,也找不到类似的帖子。

  • 我有这个“file.csv”文件要和熊猫一起读: 使用 输出为: 我知道,列是一个完整的字符串,因为: 我需要将其作为字符串列表来阅读,如。我尝试了这个问题中提供的解决方案,但没有成功,因为我的和字符实际上会把事情搞砸。 预期输出应为: