python - 将一系列数组转换为单个列表
问题描述
我需要将数组中包含数组的系列转换为列表。这是系列:
0
0 [[136.26198653744652]]
1 [[595.1701354429704]]
2 [[106.31607570796812]]
3 [[579.6333400908089]]
4 [[402.1731384585597]]
5 [[380.381375557186]]
type(b1)
Out[130]: pandas.core.series.Series
b1[1]
Out[131]: array([[595.1701354429704]], dtype=object)
我尝试过 tolist()、.values 或 to_numpy() 等。除了以下内容外,没有任何效果
b1.explode().explode().tolist()
这就是我得到的。[136.26198653744652、595.1701354429704、106.31607570796812、579.6333400908089、402.1731384585597、380.381375557186]
据我了解,explode 会进行拆箱/取消列表之类的操作。我在这里寻找一些更好的解决方案,它有助于更改系列中每个元素的类型并产生 b1.explode().explode().tolist() 的结果。
解决方案
在 中使用 2 次展平列表Series
:
L = [z for x in b1 for y in x for z in y]
print (L)
[136.26198653744652, 595.1701354429704, 106.31607570796812,
579.6333400908089, 402.1731384585597, 380.381375557186]
推荐阅读
- apex - 如何通过 MultiPart FormData 在 apex 代码中上传音频文件
- javascript - 添加键值对后将json数据推送到数组获取键对的最后一个值
- ruby-on-rails - 跨多个 <% %> 标签或多行使用的 Ruby DSL
- python - 异步任务的开销是多少?
- css - 如何在 React Native 中做最后一个子选择器?
- node.js - 如何使用 nodemon 忽略 package.json
- c# - 空接口有什么用?
- python - 这两个声明有何不同?
- sorting - 如何使用graphql对计算字段上的对象数组进行排序
- sql - 在 SQL 中自我加入以获取朋友的朋友