脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python的set处理二维数组转一维数组的方法示例

python的set处理二维数组转一维数组的方法示例

2021-07-01 00:23下士闻道 Python

这篇文章主要介绍了python的set处理二维数组转一维数组的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

for splitvalue in set(dataset[:, featureindex].tolist()):

首先set是一个无序,无重复的数据结构,所以很多时候使用它来进行去重;但是set接收的函数是原生array,这个怎么办?我现在有的numpy里面的matrix;于是我查了一下,直接使用matrix.tolist(),但是发现返回值有问题:

?
1
2
3
4
5
6
import os
 
os.chdir("d:\\galaxy\\aliyunsvn\\code\\mlinaction\\dataset")
dataarr = loaddataset("ex00.txt")
datamat = mat(dataarr)
datamat[:, 0].tolist()

输出为:

[[0.036098], [0.727098],..

并不是我想要的,因为如果此时将其放于set中将会报错:

?
1
2
set(datamat[:, 0].tolist())
>>typeerror: unhashable type: 'list'

于是查了一下,做了调整:

?
1
2
3
4
5
6
7
8
import os
 
os.chdir("d:\\galaxy\\aliyunsvn\\code\\mlinaction\\dataset")
dataarr = loaddataset("ex00.txt")
datamat = mat(dataarr)
datamat[:, 0].a.flatten().tolist()
 
>> [0.036098, 0.712386, ....

很好就是要这种一维的数组,然后再使用数组作为参数放入set中,完美。

?
1
set(datamat[:, 0].a.flatten().tolist())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/xiashiwendao/p/10507230.html

延伸 · 阅读

精彩推荐