python - 将 df 转换为列表列表
问题描述
如何从数据框中获取列表列表的以下输出:
输入数据框:
0 1
0 if IN
1 trade NN
2 figures NNS
3 for IN
4 September NNP
5 , ,
6 due JJ
7 for IN
8 release NN
9 tomorrow NN
10 , ,
输出列表:
[[('if', 'IN'),
('trade', 'NN'),
('figures', 'NNS'),
('for', 'IN'),
('September', 'NNP'),
(',', ',')],
[('due', 'JJ'),
('for', 'IN'),
('release', 'NN'),
('tommorow', 'NN'),
(',', ',')]]
只要有分隔符,列表就会拆分,
解决方案
修改后的答案:基于关于拆分的评论,一旦有分隔符',', ','
:
outputList = list([[]])
ind = 0
for value in df.values:
value = tuple(value)
outputList[ind].append(value)
if (value == (',', ',')):
outputList.append(list([]))
ind += 1
#remove last empty inner list which is empty
outputList.pop()
输出:
[[('if', 'IN'), ('trade', 'NN'), ('figures', 'NNS'), ('for', 'IN'), ('September', 'NNP'), (',', ',')], [('due', 'JJ'), ('for', 'IN'), ('release', 'NN'), ('tomorrow', 'NN'), (',', ',')]]
第一个答案:
为了将数据帧转换为元组数组,您可以:
outputList = [[tuple(value) for value in df.values]]
outputList
输出:
[[('if', 'IN'), ('trade', 'NN'), ('figures', 'NNS'), ('for', 'IN'), ('September', 'NNP'), (',', ','), ('due', 'JJ'), ('for', 'IN'), ('release', 'NN'), ('tomorrow', 'NN'), (',', ',')]]
推荐阅读
- elasticsearch - 查询太多滚动上下文
- c# - 循环访问 JObject 并替换属性值
- spring-data-elasticsearch - spring-data-elasticsearch中的DBRef相当于什么
- python - 如何在 pandas 列中处理不同的日期格式?
- youtube - Youtube m3u8 url 无法播放视频 js 和 hls
- r - devtools::check - 系统命令“Rcmd.exe”失败,退出 status:1,stdout + stderr:
- javascript - 笑话:SyntaxError:意外的令牌导出
- node.js - Nodejs Expressjs Mongodb Javascript 单元测试使用 Mocha Chai Sinon 进行随机 Nodejs 项目
- javascript - CORS 策略已阻止从源“http://localhost:3000”访问 XMLHttpRequest
- sql - 显示两列,但其中一列与 SQL Server 中另一个表中的另一列联合