规范化numpy数组中的列会导致typ

2024-10-05 12:24:11 发布

您现在位置:Python中文网/ 问答频道 /正文

希望在numpy ndarray中对数据进行简单的规范化。 特别想要X-mu/sigma。试着使用 我在前面的问题中发现了-keepinggeterror=TypeError 无法使用灵活类型执行reduce。放弃了,尝试了更简单的方法 规范化方法X-mu/X.ptp-得到了相同的错误。你知道吗

import csv
import numpy as np
from numpy import *
import urllib.request

#Import comma separated data from git.hub
url = 'http://archive.ics.uci.edu/ml/machine-learning-
databases/wine/wine.data'
urllib.request.urlretrieve(url,'F:/Python/Wine Dataset/wine_data')

#open file
filename = 'F:/Python/Wine Dataset/wine_data';
raw_data = open(filename,'rt');

#Put raw_data into a numpy.ndarray
reader = csv.reader(raw_data);
x = list(reader);
data = np.array(x)

#First column is classification, other columns are features
y= data[:,0];
X_raw = data[:,1:13];

# Attempt at normalizing data- really wanted X-mu/sigma gave up
# even this simplified version doesn't work 
# latest error is TypeError cannot perform reduce with flexible type?????

X = (X_raw - X_raw.min(0)) /  X_raw.ptp(0);

print(X);

#
#
#
#

Tags: csv方法importnumpyreducedataraw规范化
1条回答
网友
1楼 · 发布于 2024-10-05 12:24:11

终于想明白了。“数据=np.数组(x) “返回了一个包含字符串数据的数组。你知道吗

曾经是: 数据=“np.数组(x) ““

更改为:“np.数组(x) .astype类型(np.浮动)““

在那之后一切都成功了-简单的问题花了我几个小时

相关问题 更多 >

    热门问题