继续读取csv基础
true_values : list, default None
认为为True的值html
false_values : list, default None
认为为False的值python
skipinitialspace : boolean, default False
在分隔符以后跳过空格。数组
skiprows : list-like or integer or callable, default None
要跳过的行号(0索引)或文件开头要跳过的行数(int)。
若是可调用,可调用函数将根据行索引进行计算,若是要跳过该行,则返回True,不然返回False。一个有效的可调用参数的例子是lambda x: x in [0, 2]。
skipfooter : int, default 0
文件底部要跳过的行数(engine= ' c '不支持)
nrows : int, default None
要读取的文件行数。用于读取大文件
na_values : scalar, str, list-like, or dict, default None
要识别为NA/NaN的其余字符串。若是传递了dict,每一个列的特定NA值。他的默认值是NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#QNAN’, ‘-NaN’, ‘-nan’, ‘1.#IND’, ‘1.#QNAN’, ‘N/A’, ‘NA’, ‘NULL’, ‘NaN’, ‘n/a’, ‘nan’, ‘null’.
keep_default_na : bool, default True
解析数据时是否包含默认的NaN值。根据是否传入na_values,行为以下:
•若是keep_default_na为真,而且指定了na_values,则na_valuesisappendeddefault NaN值用于解析。
•若是keep_default_na为真,而且没有指定na_values,那么解析时只使用默认的NaN值。
•若是keep_default_na为假,而且指定了na_values,那么解析时只使用通过特殊处理的NaN值。
•Ifkeep_default_naisFalse,和na_valuesnot指定,没有字符串被解析为NaN。
注意,若是na_filter做为False传入,那么keep_default_na和na_values参数将被忽略。
na_filter : boolean, default True
检测缺失的值标记(空字符串和na_values的值)。在没有任何NAs的数据中,传递na_filter=False能够提升读取大文件的性能数据结构
na_filter : boolean, default True
检测缺失的值标记(空字符串和na_values的值)。在没有任何NAs的数据中,传递na_filter=False能够提升读取大文件的性能
verbose : boolean, default False
表示放置在非数字列中的NA值的数量
skip_blank_lines : boolean, default True
若是为真,跳过空白行,而不是解释为NaN值
parse_dates : boolean or list of ints or names or list of lists or dict, default Falseapp
• boolean. 若是 True -> try 尝试解析索引。
• lint或name列表。例如,若是[1,2,3]->尝试将列1,2,3分别解析为单独的日期列。
• 列表的列表(list of lists)。例如,If[[1,3]] ->合并列1和列3并解析为单个日期列。
• dict。例如{' foo ':[1,3]} ->解析列1,3做为日期和调用结果' foo '。
更多参数见
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html
返回的结果
DataFrame or TextParser框架
二维尺寸可变的、多是异构的表格数据结构,具备带标签的坐标轴(行和列)。算术操做在行和列标签上对齐。能够认为是系列对象的相似于dict的容器。主要的pandas数据结构。dom
参数:
data :
numpy ndarray(结构化或同构)、dict或DataFrameide
Dict能够包含系列、数组、常量或类列表对象函数
在版本0.23.0中更改:若是数据是一个dict,则为Python 3.6和更高版本维护参数顺序。性能
index : Index or array-like
用于生成框架的索引。若是输入数据中没有索引信息,而且没有提供索引,那么是默认范围索引
columns : Index or array-like
用于生成框架的列标签。若是没有提供列标签,是否默认为RangeIndex(0,1,2,…,n)
dtype : dtype, default None
强制数据类型。只容许一个dtype。若是没有,推断出
copy : boolean, default False
从输入复制数据。只影响DataFrame / 2d ndarray输入
import pandas as pd d = {'col1': [1, 2], 'col2': [3, 4]} df = pd.DataFrame(data=d) print df print df.dtypes col1 col2 0 1 3 1 2 4 col1 int64 col2 int64 dtype: object
import pandas as pd import numpy as np df2 = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 5)),columns=['a', 'b', 'c', 'd', 'e']) print df2 a b c d e 0 3 5 0 2 0 1 7 6 2 7 3 2 6 1 6 1 2 3 5 7 8 0 2 4 9 7 9 9 6 df2["e"] 0 0 1 3 2 2 3 2 4 6 Name: e, dtype: int64
属性:
T 转置索引和列。
at 访问行/列标签对的单个值。
axes 返回一个表示DataFrame轴的列表。
blocks (DEPRECATED) 内部属性,as_blocks()的属性同义词
columns DataFrame的列标签。
dtypes 返回DataFrame中的dtype。
empty 指示DataFrame是否为空。
ftypes 返回DataFrame中的ftypes(显示稀疏/稠密和dtype)。
iat 按整数位置访问行/列对的单个值。
iloc 纯粹基于整数位置的基于位置的选择索引。
index DataFrame的索引(行标签)。
ix 主要基于标签位置的索引器,具备整数位置回退功能。
loc 经过标签或布尔数组访问一组行和列。
ndim 返回一个表示轴/数组维数的int数。
shape 返回一个表示DataFrame的维数的元组。
size 返回一个表示该对象中元素数量的int数。
style 属性返回一个Styler对象,该对象包含用于构建DataFrame的样式HTML表示的方法。
values 返回DataFrame的Numpy表示。
Categorical Data
这是pandas分类数据类型的介绍,包括与R因子的简短比较。
分类是与统计中的分类变量相对应的pandas数据类型。分类变量具备有限的、一般是固定的可能值(类别;例如性别、社会阶层、血型、国籍、观察时间或李克特量表评分。
与统计分类变量相反,分类数据可能有一个顺序(例如“很是赞成”vs“赞成”或者“第一次观察”vs“第二次观察”),可是数值运算(加法、除法、…)是不可能的。
分类数据的全部值都在categories或np.nan中。顺序是由类别的顺序定义的,而不是由值的词法顺序定义的。在内部,数据结构由一个categories数组和一个整数代码数组组成,该数组指向categories数组中的实际值。
分类数据类型在如下状况下很是有用:
一个字符串变量,仅由几个不一样的值组成。将这样的字符串变量转换为直言变量将节省一些内存
变量的词法顺序与逻辑顺序(“1”、“2”、“3”)不同。经过转换到类别并指定类别的顺序,sort和min/max将使用逻辑顺序而不是词汇顺序
做为对其余Python库的一个信号,这个列应该被看成一个分类变量(例如,使用合适的统计方法或绘图类型)。
DataFrame中的category Series 或列能够经过几种方式建立:
在构建一个Series时,经过指定dtype="category":
s = pd.Series(["a","b","c","a"], dtype="category") s s Out[2]: 0 a 1 b 2 c 3 a dtype: category Categories (3, object): [a, b, c]
经过将现有的系列或列转换为类别dtype:
df = pd.DataFrame({"A":["a","b","c","a"]}) df["B"] = df["A"].astype('category') df A B 0 a a 1 b b 2 c c 3 a a
经过使用特殊的函数,例如cut(),它将数据分组到离散的容器中。请参阅文档中的平铺示例。
df = pd.DataFrame({'value': np.random.randint(0, 100, 20)}) labels = ["{0} - {1}".format(i, i + 9) for i in range(0, 100, 10)] df['group'] = pd.cut(df.value, range(0, 105, 10), right=False, labels=labels) df.head(10) value group 0 7 0 - 9 1 17 10 - 19 2 97 90 - 99 3 62 60 - 69 4 3 0 - 9 5 76 70 - 79 6 50 50 - 59 7 61 60 - 69 8 8 0 - 9 9 45 40 - 49
更多见
https://pandas.pydata.org/pandas-docs/stable/categorical.html?highlight=categories
pandas.DataFrame.values
返回DataFrame的Numpy表示。
只有DataFrame中的值会返回,ax标签会被删除。
返回:
numpy.ndarray
DataFrame的值。
pandas.DataFrame.index
检索索引标签
pandas.DataFrame.columns
检索列名
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) print df print df.index print df.columns name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 RangeIndex(start=0, stop=3, step=1) Index([u'name', u'age', u'result'], dtype='object')
dtype将是一个较低的公共类型(隐式向上转换);也就是说,若是dtype(甚至是数字类型)是混合,就会选择容纳全部类型的dtype。若是您没有处理这些块,请当心使用。
例如,若是dtype是float16和float32,那么dtype将向上转换为float32。若是dtype为int32和uint8,则dtype将被向上转换为int32。经过numpy.find_common_type()转换,混合int64和uint64将产生float64 dtype。
df = pd.DataFrame({'age': [ 3, 29], 'height': [94, 170], 'weight': [31, 115]} ) print df print df.dtypes print df.values age height weight 0 3 94 31 1 29 170 115 age int64 height int64 weight int64 dtype: object [[ 3 94 31] [ 29 170 115]]
下面的代码提取特征列和结果列
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) data=df.values print df print data dataColName=df.columns print dataColName[-1] print dataColName[:len(dataColName)-1] name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 [["'zhangsang'" 32 1] ["'lisi'" 29 2] ["'wangwu'" 30 1]] result Index([u'name', u'age'], dtype='object')
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) print df print data=df.values dataColName=df.columns ftColName=dataColName[-1] rsColName=list(dataColName[:len(dataColName)-1]) print df[ftColName].values print df[rsColName].values name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 [1 2 1] [["'zhangsang'" 32] ["'lisi'" 29] ["'wangwu'" 30]]
读取葡萄酒质量样本数据
import pandas as pd df=pd.read_csv("winequality-white-test.csv",sep=";") print df print data=df.values dataColName=df.columns rsColName=dataColName[-1] ftColName=list(dataColName[:len(dataColName)-1]) print df[rsColName].values print '====' print df[ftColName].values
fixedacidity volatileacidity citricacid residualsugar chlorides \ 0 6.8 0.220 0.24 4.90 0.092 1 6.0 0.190 0.26 12.40 0.048 2 7.0 0.470 0.07 1.10 0.035 3 6.6 0.380 0.15 4.60 0.044 4 7.2 0.240 0.27 1.40 0.038 5 6.2 0.350 0.03 1.20 0.064 6 6.4 0.260 0.24 6.40 0.040 7 6.7 0.250 0.13 1.20 0.041 8 6.7 0.230 0.31 2.10 0.046 9 7.4 0.240 0.29 10.10 0.050 10 6.2 0.270 0.43 7.80 0.056 11 6.8 0.300 0.23 4.60 0.061 12 6.0 0.270 0.28 4.80 0.063 13 8.6 0.230 0.46 1.00 0.054 14 6.7 0.230 0.31 2.10 0.046 15 7.4 0.240 0.29 10.10 0.050 16 7.1 0.180 0.36 1.40 0.043 17 7.0 0.320 0.34 1.30 0.042 18 7.4 0.180 0.30 8.80 0.064 19 6.7 0.540 0.28 5.40 0.060 20 6.8 0.220 0.31 1.40 0.053 21 7.1 0.200 0.34 16.00 0.050 22 7.1 0.340 0.20 6.10 0.063 23 7.3 0.220 0.30 8.20 0.047 24 7.1 0.430 0.61 11.80 0.045 25 7.1 0.440 0.62 11.80 0.044 26 7.2 0.390 0.63 11.00 0.044 27 6.8 0.250 0.31 13.30 0.050 28 7.1 0.430 0.61 11.80 0.045 29 7.1 0.440 0.62 11.80 0.044 30 7.2 0.390 0.63 11.00 0.044 31 6.1 0.270 0.43 7.50 0.049 32 6.9 0.240 0.33 1.70 0.035 33 6.9 0.210 0.33 1.80 0.034 34 7.5 0.170 0.32 1.70 0.040 35 7.1 0.260 0.29 12.40 0.044 36 6.0 0.340 0.66 15.90 0.046 37 8.6 0.265 0.36 1.20 0.034 38 9.8 0.360 0.46 10.50 0.038 39 6.0 0.340 0.66 15.90 0.046 40 7.4 0.250 0.37 13.50 0.060 41 7.1 0.120 0.32 9.60 0.054 42 6.0 0.210 0.24 12.10 0.050 43 7.5 0.305 0.40 18.90 0.059 44 7.4 0.250 0.37 13.50 0.060 45 7.3 0.130 0.32 14.40 0.051 46 7.1 0.120 0.32 9.60 0.054 47 7.1 0.230 0.35 16.50 0.040 48 7.1 0.230 0.35 16.50 0.040 49 6.9 0.330 0.28 1.30 0.051 50 6.5 0.170 0.54 8.50 0.082 51 7.2 0.270 0.46 18.75 0.052 52 7.2 0.310 0.50 13.30 0.056 53 6.7 0.410 0.34 9.20 0.049 54 6.7 0.410 0.34 9.20 0.049 55 5.5 0.485 0.00 1.50 0.065 freesulfurdioxide totalsulfurdioxide density pH sulphates alcohol \ 0 30.0 123.0 0.9951 3.03 0.46 8.6 1 50.0 147.0 0.9972 3.30 0.36 8.9 2 17.0 151.0 0.9910 3.02 0.34 10.5 3 25.0 78.0 0.9931 3.11 0.38 10.2 4 31.0 122.0 0.9927 3.15 0.46 10.3 5 29.0 120.0 0.9934 3.22 0.54 9.1 6 27.0 124.0 0.9903 3.22 0.49 12.6 7 81.0 174.0 0.9920 3.14 0.42 9.8 8 30.0 96.0 0.9926 3.33 0.64 10.7 9 21.0 105.0 0.9962 3.13 0.35 9.5 10 48.0 244.0 0.9956 3.10 0.51 9.0 11 50.5 238.5 0.9958 3.32 0.60 9.5 12 31.0 201.0 0.9964 3.69 0.71 10.0 13 9.0 72.0 0.9941 2.95 0.49 9.1 14 30.0 96.0 0.9926 3.33 0.64 10.7 15 21.0 105.0 0.9962 3.13 0.35 9.5 16 31.0 87.0 0.9898 3.26 0.37 12.7 17 20.0 69.0 0.9912 3.31 0.65 12.0 18 26.0 103.0 0.9961 2.94 0.56 9.3 19 21.0 105.0 0.9949 3.27 0.37 9.0 20 34.0 114.0 0.9929 3.39 0.77 10.6 21 51.0 166.0 0.9985 3.21 0.60 9.2 22 47.0 164.0 0.9946 3.17 0.42 10.0 23 42.0 207.0 0.9966 3.33 0.46 9.5 24 54.0 155.0 0.9974 3.11 0.45 8.7 25 52.0 152.0 0.9975 3.12 0.46 8.7 26 55.0 156.0 0.9974 3.09 0.44 8.7 27 69.0 202.0 0.9972 3.22 0.48 9.7 28 54.0 155.0 0.9974 3.11 0.45 8.7 29 52.0 152.0 0.9975 3.12 0.46 8.7 30 55.0 156.0 0.9974 3.09 0.44 8.7 31 65.0 243.0 0.9957 3.12 0.47 9.0 32 47.0 136.0 0.9900 3.26 0.40 12.6 33 48.0 136.0 0.9899 3.25 0.41 12.6 34 51.0 148.0 0.9916 3.21 0.44 11.5 35 62.0 240.0 0.9969 3.04 0.42 9.2 36 26.0 164.0 0.9979 3.14 0.50 8.8 37 15.0 80.0 0.9913 2.95 0.36 11.4 38 4.0 83.0 0.9956 2.89 0.30 10.1 39 26.0 164.0 0.9979 3.14 0.50 8.8 40 52.0 192.0 0.9975 3.00 0.44 9.1 41 64.0 162.0 0.9962 3.40 0.41 9.4 42 55.0 164.0 0.9970 3.34 0.39 9.4 43 44.0 170.0 1.0000 2.99 0.46 9.0 44 52.0 192.0 0.9975 3.00 0.44 9.1 45 34.0 109.0 0.9974 3.20 0.35 9.2 46 64.0 162.0 0.9962 3.40 0.41 9.4 47 60.0 171.0 0.9990 3.16 0.59 9.1 48 60.0 171.0 0.9990 3.16 0.59 9.1 49 37.0 187.0 0.9927 3.27 0.60 10.3 50 64.0 163.0 0.9959 2.89 0.39 8.8 51 45.0 255.0 1.0000 3.04 0.52 8.9 52 68.0 195.0 0.9982 3.01 0.47 9.2 53 29.0 150.0 0.9968 3.22 0.51 9.1 54 29.0 150.0 0.9968 3.22 0.51 9.1 55 8.0 103.0 0.9940 3.63 0.40 9.7 quality 0 6 1 6 2 5 3 6 4 6 5 5 6 7 7 5 8 8 9 5 10 6 11 5 12 5 13 6 14 8 15 5 16 7 17 7 18 5 19 5 20 6 21 6 22 5 23 6 24 5 25 6 26 6 27 6 28 5 29 6 30 6 31 5 32 7 33 7 34 7 35 6 36 6 37 7 38 4 39 6 40 5 41 5 42 5 43 5 44 5 45 6 46 5 47 6 48 6 49 5 50 6 51 5 52 5 53 5 54 5 55 4 [6 6 5 6 6 5 7 5 8 5 6 5 5 6 8 5 7 7 5 5 6 6 5 6 5 6 6 6 5 6 6 5 7 7 7 6 6 7 4 6 5 5 5 5 5 6 5 6 6 5 6 5 5 5 5 4] ==== [[6.800e+00 2.200e-01 2.400e-01 4.900e+00 9.200e-02 3.000e+01 1.230e+02 9.951e-01 3.030e+00 4.600e-01 8.600e+00] [6.000e+00 1.900e-01 2.600e-01 1.240e+01 4.800e-02 5.000e+01 1.470e+02 9.972e-01 3.300e+00 3.600e-01 8.900e+00] [7.000e+00 4.700e-01 7.000e-02 1.100e+00 3.500e-02 1.700e+01 1.510e+02 9.910e-01 3.020e+00 3.400e-01 1.050e+01] [6.600e+00 3.800e-01 1.500e-01 4.600e+00 4.400e-02 2.500e+01 7.800e+01 9.931e-01 3.110e+00 3.800e-01 1.020e+01] [7.200e+00 2.400e-01 2.700e-01 1.400e+00 3.800e-02 3.100e+01 1.220e+02 9.927e-01 3.150e+00 4.600e-01 1.030e+01] [6.200e+00 3.500e-01 3.000e-02 1.200e+00 6.400e-02 2.900e+01 1.200e+02 9.934e-01 3.220e+00 5.400e-01 9.100e+00] [6.400e+00 2.600e-01 2.400e-01 6.400e+00 4.000e-02 2.700e+01 1.240e+02 9.903e-01 3.220e+00 4.900e-01 1.260e+01] [6.700e+00 2.500e-01 1.300e-01 1.200e+00 4.100e-02 8.100e+01 1.740e+02 9.920e-01 3.140e+00 4.200e-01 9.800e+00] [6.700e+00 2.300e-01 3.100e-01 2.100e+00 4.600e-02 3.000e+01 9.600e+01 9.926e-01 3.330e+00 6.400e-01 1.070e+01] [7.400e+00 2.400e-01 2.900e-01 1.010e+01 5.000e-02 2.100e+01 1.050e+02 9.962e-01 3.130e+00 3.500e-01 9.500e+00] [6.200e+00 2.700e-01 4.300e-01 7.800e+00 5.600e-02 4.800e+01 2.440e+02 9.956e-01 3.100e+00 5.100e-01 9.000e+00] [6.800e+00 3.000e-01 2.300e-01 4.600e+00 6.100e-02 5.050e+01 2.385e+02 9.958e-01 3.320e+00 6.000e-01 9.500e+00] [6.000e+00 2.700e-01 2.800e-01 4.800e+00 6.300e-02 3.100e+01 2.010e+02 9.964e-01 3.690e+00 7.100e-01 1.000e+01] [8.600e+00 2.300e-01 4.600e-01 1.000e+00 5.400e-02 9.000e+00 7.200e+01 9.941e-01 2.950e+00 4.900e-01 9.100e+00] [6.700e+00 2.300e-01 3.100e-01 2.100e+00 4.600e-02 3.000e+01 9.600e+01 9.926e-01 3.330e+00 6.400e-01 1.070e+01] [7.400e+00 2.400e-01 2.900e-01 1.010e+01 5.000e-02 2.100e+01 1.050e+02 9.962e-01 3.130e+00 3.500e-01 9.500e+00] [7.100e+00 1.800e-01 3.600e-01 1.400e+00 4.300e-02 3.100e+01 8.700e+01 9.898e-01 3.260e+00 3.700e-01 1.270e+01] [7.000e+00 3.200e-01 3.400e-01 1.300e+00 4.200e-02 2.000e+01 6.900e+01 9.912e-01 3.310e+00 6.500e-01 1.200e+01] [7.400e+00 1.800e-01 3.000e-01 8.800e+00 6.400e-02 2.600e+01 1.030e+02 9.961e-01 2.940e+00 5.600e-01 9.300e+00] [6.700e+00 5.400e-01 2.800e-01 5.400e+00 6.000e-02 2.100e+01 1.050e+02 9.949e-01 3.270e+00 3.700e-01 9.000e+00] [6.800e+00 2.200e-01 3.100e-01 1.400e+00 5.300e-02 3.400e+01 1.140e+02 9.929e-01 3.390e+00 7.700e-01 1.060e+01] [7.100e+00 2.000e-01 3.400e-01 1.600e+01 5.000e-02 5.100e+01 1.660e+02 9.985e-01 3.210e+00 6.000e-01 9.200e+00] [7.100e+00 3.400e-01 2.000e-01 6.100e+00 6.300e-02 4.700e+01 1.640e+02 9.946e-01 3.170e+00 4.200e-01 1.000e+01] [7.300e+00 2.200e-01 3.000e-01 8.200e+00 4.700e-02 4.200e+01 2.070e+02 9.966e-01 3.330e+00 4.600e-01 9.500e+00] [7.100e+00 4.300e-01 6.100e-01 1.180e+01 4.500e-02 5.400e+01 1.550e+02 9.974e-01 3.110e+00 4.500e-01 8.700e+00] [7.100e+00 4.400e-01 6.200e-01 1.180e+01 4.400e-02 5.200e+01 1.520e+02 9.975e-01 3.120e+00 4.600e-01 8.700e+00] [7.200e+00 3.900e-01 6.300e-01 1.100e+01 4.400e-02 5.500e+01 1.560e+02 9.974e-01 3.090e+00 4.400e-01 8.700e+00] [6.800e+00 2.500e-01 3.100e-01 1.330e+01 5.000e-02 6.900e+01 2.020e+02 9.972e-01 3.220e+00 4.800e-01 9.700e+00] [7.100e+00 4.300e-01 6.100e-01 1.180e+01 4.500e-02 5.400e+01 1.550e+02 9.974e-01 3.110e+00 4.500e-01 8.700e+00] [7.100e+00 4.400e-01 6.200e-01 1.180e+01 4.400e-02 5.200e+01 1.520e+02 9.975e-01 3.120e+00 4.600e-01 8.700e+00] [7.200e+00 3.900e-01 6.300e-01 1.100e+01 4.400e-02 5.500e+01 1.560e+02 9.974e-01 3.090e+00 4.400e-01 8.700e+00] [6.100e+00 2.700e-01 4.300e-01 7.500e+00 4.900e-02 6.500e+01 2.430e+02 9.957e-01 3.120e+00 4.700e-01 9.000e+00] [6.900e+00 2.400e-01 3.300e-01 1.700e+00 3.500e-02 4.700e+01 1.360e+02 9.900e-01 3.260e+00 4.000e-01 1.260e+01] [6.900e+00 2.100e-01 3.300e-01 1.800e+00 3.400e-02 4.800e+01 1.360e+02 9.899e-01 3.250e+00 4.100e-01 1.260e+01] [7.500e+00 1.700e-01 3.200e-01 1.700e+00 4.000e-02 5.100e+01 1.480e+02 9.916e-01 3.210e+00 4.400e-01 1.150e+01] [7.100e+00 2.600e-01 2.900e-01 1.240e+01 4.400e-02 6.200e+01 2.400e+02 9.969e-01 3.040e+00 4.200e-01 9.200e+00] [6.000e+00 3.400e-01 6.600e-01 1.590e+01 4.600e-02 2.600e+01 1.640e+02 9.979e-01 3.140e+00 5.000e-01 8.800e+00] [8.600e+00 2.650e-01 3.600e-01 1.200e+00 3.400e-02 1.500e+01 8.000e+01 9.913e-01 2.950e+00 3.600e-01 1.140e+01] [9.800e+00 3.600e-01 4.600e-01 1.050e+01 3.800e-02 4.000e+00 8.300e+01 9.956e-01 2.890e+00 3.000e-01 1.010e+01] [6.000e+00 3.400e-01 6.600e-01 1.590e+01 4.600e-02 2.600e+01 1.640e+02 9.979e-01 3.140e+00 5.000e-01 8.800e+00] [7.400e+00 2.500e-01 3.700e-01 1.350e+01 6.000e-02 5.200e+01 1.920e+02 9.975e-01 3.000e+00 4.400e-01 9.100e+00] [7.100e+00 1.200e-01 3.200e-01 9.600e+00 5.400e-02 6.400e+01 1.620e+02 9.962e-01 3.400e+00 4.100e-01 9.400e+00] [6.000e+00 2.100e-01 2.400e-01 1.210e+01 5.000e-02 5.500e+01 1.640e+02 9.970e-01 3.340e+00 3.900e-01 9.400e+00] [7.500e+00 3.050e-01 4.000e-01 1.890e+01 5.900e-02 4.400e+01 1.700e+02 1.000e+00 2.990e+00 4.600e-01 9.000e+00] [7.400e+00 2.500e-01 3.700e-01 1.350e+01 6.000e-02 5.200e+01 1.920e+02 9.975e-01 3.000e+00 4.400e-01 9.100e+00] [7.300e+00 1.300e-01 3.200e-01 1.440e+01 5.100e-02 3.400e+01 1.090e+02 9.974e-01 3.200e+00 3.500e-01 9.200e+00] [7.100e+00 1.200e-01 3.200e-01 9.600e+00 5.400e-02 6.400e+01 1.620e+02 9.962e-01 3.400e+00 4.100e-01 9.400e+00] [7.100e+00 2.300e-01 3.500e-01 1.650e+01 4.000e-02 6.000e+01 1.710e+02 9.990e-01 3.160e+00 5.900e-01 9.100e+00] [7.100e+00 2.300e-01 3.500e-01 1.650e+01 4.000e-02 6.000e+01 1.710e+02 9.990e-01 3.160e+00 5.900e-01 9.100e+00] [6.900e+00 3.300e-01 2.800e-01 1.300e+00 5.100e-02 3.700e+01 1.870e+02 9.927e-01 3.270e+00 6.000e-01 1.030e+01] [6.500e+00 1.700e-01 5.400e-01 8.500e+00 8.200e-02 6.400e+01 1.630e+02 9.959e-01 2.890e+00 3.900e-01 8.800e+00] [7.200e+00 2.700e-01 4.600e-01 1.875e+01 5.200e-02 4.500e+01 2.550e+02 1.000e+00 3.040e+00 5.200e-01 8.900e+00] [7.200e+00 3.100e-01 5.000e-01 1.330e+01 5.600e-02 6.800e+01 1.950e+02 9.982e-01 3.010e+00 4.700e-01 9.200e+00] [6.700e+00 4.100e-01 3.400e-01 9.200e+00 4.900e-02 2.900e+01 1.500e+02 9.968e-01 3.220e+00 5.100e-01 9.100e+00] [6.700e+00 4.100e-01 3.400e-01 9.200e+00 4.900e-02 2.900e+01 1.500e+02 9.968e-01 3.220e+00 5.100e-01 9.100e+00] [5.500e+00 4.850e-01 0.000e+00 1.500e+00 6.500e-02 8.000e+00 1.030e+02 9.940e-01 3.630e+00 4.000e-01 9.700e+00]]
pandas.DataFrame.values
返回DataFrame的Numpy表示。
只有DataFrame中的值会返回,ax标签会被删除。
返回:
numpy.ndarray
DataFrame的值。
pandas.DataFrame.index
检索索引标签
pandas.DataFrame.columns
检索列名
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) print df print df.index print df.columns name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 RangeIndex(start=0, stop=3, step=1) Index([u'name', u'age', u'result'], dtype='object')
dtype将是一个较低的公共类型(隐式向上转换);也就是说,若是dtype(甚至是数字类型)是混合,就会选择容纳全部类型的dtype。若是您没有处理这些块,请当心使用。
例如,若是dtype是float16和float32,那么dtype将向上转换为float32。若是dtype为int32和uint8,则dtype将被向上转换为int32。经过numpy.find_common_type()转换,混合int64和uint64将产生float64 dtype。
df = pd.DataFrame({'age': [ 3, 29], 'height': [94, 170], 'weight': [31, 115]} ) print df print df.dtypes print df.values age height weight 0 3 94 31 1 29 170 115 age int64 height int64 weight int64 dtype: object [[ 3 94 31] [ 29 170 115]]
下面的代码提取特征列和结果列
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) data=df.values print df print data dataColName=df.columns print dataColName[-1] print dataColName[:len(dataColName)-1] name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 [["'zhangsang'" 32 1] ["'lisi'" 29 2] ["'wangwu'" 30 1]] result Index([u'name', u'age'], dtype='object')
import pandas as pd x="name,age,result\n'zhangsang',32,1\n'lisi',29,2\n'wangwu',30,1" df=pd.read_csv(StringIO.StringIO(x)) print df print data=df.values dataColName=df.columns ftColName=dataColName[-1] rsColName=list(dataColName[:len(dataColName)-1]) print df[ftColName].values print df[rsColName].values name age result 0 'zhangsang' 32 1 1 'lisi' 29 2 2 'wangwu' 30 1 [1 2 1] [["'zhangsang'" 32] ["'lisi'" 29] ["'wangwu'" 30]]
读取葡萄酒质量样本数据
import pandas as pd df=pd.read_csv("winequality-white-test.csv",sep=";") print df print data=df.values dataColName=df.columns rsColName=dataColName[-1] ftColName=list(dataColName[:len(dataColName)-1]) print df[rsColName].values print '====' print df[ftColName].values
fixedacidity volatileacidity citricacid residualsugar chlorides \ 0 6.8 0.220 0.24 4.90 0.092 1 6.0 0.190 0.26 12.40 0.048 2 7.0 0.470 0.07 1.10 0.035 3 6.6 0.380 0.15 4.60 0.044 4 7.2 0.240 0.27 1.40 0.038 5 6.2 0.350 0.03 1.20 0.064 6 6.4 0.260 0.24 6.40 0.040 7 6.7 0.250 0.13 1.20 0.041 8 6.7 0.230 0.31 2.10 0.046 9 7.4 0.240 0.29 10.10 0.050 10 6.2 0.270 0.43 7.80 0.056 11 6.8 0.300 0.23 4.60 0.061 12 6.0 0.270 0.28 4.80 0.063 13 8.6 0.230 0.46 1.00 0.054 14 6.7 0.230 0.31 2.10 0.046 15 7.4 0.240 0.29 10.10 0.050 16 7.1 0.180 0.36 1.40 0.043 17 7.0 0.320 0.34 1.30 0.042 18 7.4 0.180 0.30 8.80 0.064 19 6.7 0.540 0.28 5.40 0.060 20 6.8 0.220 0.31 1.40 0.053 21 7.1 0.200 0.34 16.00 0.050 22 7.1 0.340 0.20 6.10 0.063 23 7.3 0.220 0.30 8.20 0.047 24 7.1 0.430 0.61 11.80 0.045 25 7.1 0.440 0.62 11.80 0.044 26 7.2 0.390 0.63 11.00 0.044 27 6.8 0.250 0.31 13.30 0.050 28 7.1 0.430 0.61 11.80 0.045 29 7.1 0.440 0.62 11.80 0.044 30 7.2 0.390 0.63 11.00 0.044 31 6.1 0.270 0.43 7.50 0.049 32 6.9 0.240 0.33 1.70 0.035 33 6.9 0.210 0.33 1.80 0.034 34 7.5 0.170 0.32 1.70 0.040 35 7.1 0.260 0.29 12.40 0.044 36 6.0 0.340 0.66 15.90 0.046 37 8.6 0.265 0.36 1.20 0.034 38 9.8 0.360 0.46 10.50 0.038 39 6.0 0.340 0.66 15.90 0.046 40 7.4 0.250 0.37 13.50 0.060 41 7.1 0.120 0.32 9.60 0.054 42 6.0 0.210 0.24 12.10 0.050 43 7.5 0.305 0.40 18.90 0.059 44 7.4 0.250 0.37 13.50 0.060 45 7.3 0.130 0.32 14.40 0.051 46 7.1 0.120 0.32 9.60 0.054 47 7.1 0.230 0.35 16.50 0.040 48 7.1 0.230 0.35 16.50 0.040 49 6.9 0.330 0.28 1.30 0.051 50 6.5 0.170 0.54 8.50 0.082 51 7.2 0.270 0.46 18.75 0.052 52 7.2 0.310 0.50 13.30 0.056 53 6.7 0.410 0.34 9.20 0.049 54 6.7 0.410 0.34 9.20 0.049 55 5.5 0.485 0.00 1.50 0.065 freesulfurdioxide totalsulfurdioxide density pH sulphates alcohol \ 0 30.0 123.0 0.9951 3.03 0.46 8.6 1 50.0 147.0 0.9972 3.30 0.36 8.9 2 17.0 151.0 0.9910 3.02 0.34 10.5 3 25.0 78.0 0.9931 3.11 0.38 10.2 4 31.0 122.0 0.9927 3.15 0.46 10.3 5 29.0 120.0 0.9934 3.22 0.54 9.1 6 27.0 124.0 0.9903 3.22 0.49 12.6 7 81.0 174.0 0.9920 3.14 0.42 9.8 8 30.0 96.0 0.9926 3.33 0.64 10.7 9 21.0 105.0 0.9962 3.13 0.35 9.5 10 48.0 244.0 0.9956 3.10 0.51 9.0 11 50.5 238.5 0.9958 3.32 0.60 9.5 12 31.0 201.0 0.9964 3.69 0.71 10.0 13 9.0 72.0 0.9941 2.95 0.49 9.1 14 30.0 96.0 0.9926 3.33 0.64 10.7 15 21.0 105.0 0.9962 3.13 0.35 9.5 16 31.0 87.0 0.9898 3.26 0.37 12.7 17 20.0 69.0 0.9912 3.31 0.65 12.0 18 26.0 103.0 0.9961 2.94 0.56 9.3 19 21.0 105.0 0.9949 3.27 0.37 9.0 20 34.0 114.0 0.9929 3.39 0.77 10.6 21 51.0 166.0 0.9985 3.21 0.60 9.2 22 47.0 164.0 0.9946 3.17 0.42 10.0 23 42.0 207.0 0.9966 3.33 0.46 9.5 24 54.0 155.0 0.9974 3.11 0.45 8.7 25 52.0 152.0 0.9975 3.12 0.46 8.7 26 55.0 156.0 0.9974 3.09 0.44 8.7 27 69.0 202.0 0.9972 3.22 0.48 9.7 28 54.0 155.0 0.9974 3.11 0.45 8.7 29 52.0 152.0 0.9975 3.12 0.46 8.7 30 55.0 156.0 0.9974 3.09 0.44 8.7 31 65.0 243.0 0.9957 3.12 0.47 9.0 32 47.0 136.0 0.9900 3.26 0.40 12.6 33 48.0 136.0 0.9899 3.25 0.41 12.6 34 51.0 148.0 0.9916 3.21 0.44 11.5 35 62.0 240.0 0.9969 3.04 0.42 9.2 36 26.0 164.0 0.9979 3.14 0.50 8.8 37 15.0 80.0 0.9913 2.95 0.36 11.4 38 4.0 83.0 0.9956 2.89 0.30 10.1 39 26.0 164.0 0.9979 3.14 0.50 8.8 40 52.0 192.0 0.9975 3.00 0.44 9.1 41 64.0 162.0 0.9962 3.40 0.41 9.4 42 55.0 164.0 0.9970 3.34 0.39 9.4 43 44.0 170.0 1.0000 2.99 0.46 9.0 44 52.0 192.0 0.9975 3.00 0.44 9.1 45 34.0 109.0 0.9974 3.20 0.35 9.2 46 64.0 162.0 0.9962 3.40 0.41 9.4 47 60.0 171.0 0.9990 3.16 0.59 9.1 48 60.0 171.0 0.9990 3.16 0.59 9.1 49 37.0 187.0 0.9927 3.27 0.60 10.3 50 64.0 163.0 0.9959 2.89 0.39 8.8 51 45.0 255.0 1.0000 3.04 0.52 8.9 52 68.0 195.0 0.9982 3.01 0.47 9.2 53 29.0 150.0 0.9968 3.22 0.51 9.1 54 29.0 150.0 0.9968 3.22 0.51 9.1 55 8.0 103.0 0.9940 3.63 0.40 9.7 quality 0 6 1 6 2 5 3 6 4 6 5 5 6 7 7 5 8 8 9 5 10 6 11 5 12 5 13 6 14 8 15 5 16 7 17 7 18 5 19 5 20 6 21 6 22 5 23 6 24 5 25 6 26 6 27 6 28 5 29 6 30 6 31 5 32 7 33 7 34 7 35 6 36 6 37 7 38 4 39 6 40 5 41 5 42 5 43 5 44 5 45 6 46 5 47 6 48 6 49 5 50 6 51 5 52 5 53 5 54 5 55 4 [6 6 5 6 6 5 7 5 8 5 6 5 5 6 8 5 7 7 5 5 6 6 5 6 5 6 6 6 5 6 6 5 7 7 7 6 6 7 4 6 5 5 5 5 5 6 5 6 6 5 6 5 5 5 5 4] ==== [[6.800e+00 2.200e-01 2.400e-01 4.900e+00 9.200e-02 3.000e+01 1.230e+02 9.951e-01 3.030e+00 4.600e-01 8.600e+00] [6.000e+00 1.900e-01 2.600e-01 1.240e+01 4.800e-02 5.000e+01 1.470e+02 9.972e-01 3.300e+00 3.600e-01 8.900e+00] [7.000e+00 4.700e-01 7.000e-02 1.100e+00 3.500e-02 1.700e+01 1.510e+02 9.910e-01 3.020e+00 3.400e-01 1.050e+01] [6.600e+00 3.800e-01 1.500e-01 4.600e+00 4.400e-02 2.500e+01 7.800e+01 9.931e-01 3.110e+00 3.800e-01 1.020e+01] [7.200e+00 2.400e-01 2.700e-01 1.400e+00 3.800e-02 3.100e+01 1.220e+02 9.927e-01 3.150e+00 4.600e-01 1.030e+01] [6.200e+00 3.500e-01 3.000e-02 1.200e+00 6.400e-02 2.900e+01 1.200e+02 9.934e-01 3.220e+00 5.400e-01 9.100e+00] [6.400e+00 2.600e-01 2.400e-01 6.400e+00 4.000e-02 2.700e+01 1.240e+02 9.903e-01 3.220e+00 4.900e-01 1.260e+01] [6.700e+00 2.500e-01 1.300e-01 1.200e+00 4.100e-02 8.100e+01 1.740e+02 9.920e-01 3.140e+00 4.200e-01 9.800e+00] [6.700e+00 2.300e-01 3.100e-01 2.100e+00 4.600e-02 3.000e+01 9.600e+01 9.926e-01 3.330e+00 6.400e-01 1.070e+01] [7.400e+00 2.400e-01 2.900e-01 1.010e+01 5.000e-02 2.100e+01 1.050e+02 9.962e-01 3.130e+00 3.500e-01 9.500e+00] [6.200e+00 2.700e-01 4.300e-01 7.800e+00 5.600e-02 4.800e+01 2.440e+02 9.956e-01 3.100e+00 5.100e-01 9.000e+00] [6.800e+00 3.000e-01 2.300e-01 4.600e+00 6.100e-02 5.050e+01 2.385e+02 9.958e-01 3.320e+00 6.000e-01 9.500e+00] [6.000e+00 2.700e-01 2.800e-01 4.800e+00 6.300e-02 3.100e+01 2.010e+02 9.964e-01 3.690e+00 7.100e-01 1.000e+01] [8.600e+00 2.300e-01 4.600e-01 1.000e+00 5.400e-02 9.000e+00 7.200e+01 9.941e-01 2.950e+00 4.900e-01 9.100e+00] [6.700e+00 2.300e-01 3.100e-01 2.100e+00 4.600e-02 3.000e+01 9.600e+01 9.926e-01 3.330e+00 6.400e-01 1.070e+01] [7.400e+00 2.400e-01 2.900e-01 1.010e+01 5.000e-02 2.100e+01 1.050e+02 9.962e-01 3.130e+00 3.500e-01 9.500e+00] [7.100e+00 1.800e-01 3.600e-01 1.400e+00 4.300e-02 3.100e+01 8.700e+01 9.898e-01 3.260e+00 3.700e-01 1.270e+01] [7.000e+00 3.200e-01 3.400e-01 1.300e+00 4.200e-02 2.000e+01 6.900e+01 9.912e-01 3.310e+00 6.500e-01 1.200e+01] [7.400e+00 1.800e-01 3.000e-01 8.800e+00 6.400e-02 2.600e+01 1.030e+02 9.961e-01 2.940e+00 5.600e-01 9.300e+00] [6.700e+00 5.400e-01 2.800e-01 5.400e+00 6.000e-02 2.100e+01 1.050e+02 9.949e-01 3.270e+00 3.700e-01 9.000e+00] [6.800e+00 2.200e-01 3.100e-01 1.400e+00 5.300e-02 3.400e+01 1.140e+02 9.929e-01 3.390e+00 7.700e-01 1.060e+01] [7.100e+00 2.000e-01 3.400e-01 1.600e+01 5.000e-02 5.100e+01 1.660e+02 9.985e-01 3.210e+00 6.000e-01 9.200e+00] [7.100e+00 3.400e-01 2.000e-01 6.100e+00 6.300e-02 4.700e+01 1.640e+02 9.946e-01 3.170e+00 4.200e-01 1.000e+01] [7.300e+00 2.200e-01 3.000e-01 8.200e+00 4.700e-02 4.200e+01 2.070e+02 9.966e-01 3.330e+00 4.600e-01 9.500e+00] [7.100e+00 4.300e-01 6.100e-01 1.180e+01 4.500e-02 5.400e+01 1.550e+02 9.974e-01 3.110e+00 4.500e-01 8.700e+00] [7.100e+00 4.400e-01 6.200e-01 1.180e+01 4.400e-02 5.200e+01 1.520e+02 9.975e-01 3.120e+00 4.600e-01 8.700e+00] [7.200e+00 3.900e-01 6.300e-01 1.100e+01 4.400e-02 5.500e+01 1.560e+02 9.974e-01 3.090e+00 4.400e-01 8.700e+00] [6.800e+00 2.500e-01 3.100e-01 1.330e+01 5.000e-02 6.900e+01 2.020e+02 9.972e-01 3.220e+00 4.800e-01 9.700e+00] [7.100e+00 4.300e-01 6.100e-01 1.180e+01 4.500e-02 5.400e+01 1.550e+02 9.974e-01 3.110e+00 4.500e-01 8.700e+00] [7.100e+00 4.400e-01 6.200e-01 1.180e+01 4.400e-02 5.200e+01 1.520e+02 9.975e-01 3.120e+00 4.600e-01 8.700e+00] [7.200e+00 3.900e-01 6.300e-01 1.100e+01 4.400e-02 5.500e+01 1.560e+02 9.974e-01 3.090e+00 4.400e-01 8.700e+00] [6.100e+00 2.700e-01 4.300e-01 7.500e+00 4.900e-02 6.500e+01 2.430e+02 9.957e-01 3.120e+00 4.700e-01 9.000e+00] [6.900e+00 2.400e-01 3.300e-01 1.700e+00 3.500e-02 4.700e+01 1.360e+02 9.900e-01 3.260e+00 4.000e-01 1.260e+01] [6.900e+00 2.100e-01 3.300e-01 1.800e+00 3.400e-02 4.800e+01 1.360e+02 9.899e-01 3.250e+00 4.100e-01 1.260e+01] [7.500e+00 1.700e-01 3.200e-01 1.700e+00 4.000e-02 5.100e+01 1.480e+02 9.916e-01 3.210e+00 4.400e-01 1.150e+01] [7.100e+00 2.600e-01 2.900e-01 1.240e+01 4.400e-02 6.200e+01 2.400e+02 9.969e-01 3.040e+00 4.200e-01 9.200e+00] [6.000e+00 3.400e-01 6.600e-01 1.590e+01 4.600e-02 2.600e+01 1.640e+02 9.979e-01 3.140e+00 5.000e-01 8.800e+00] [8.600e+00 2.650e-01 3.600e-01 1.200e+00 3.400e-02 1.500e+01 8.000e+01 9.913e-01 2.950e+00 3.600e-01 1.140e+01] [9.800e+00 3.600e-01 4.600e-01 1.050e+01 3.800e-02 4.000e+00 8.300e+01 9.956e-01 2.890e+00 3.000e-01 1.010e+01] [6.000e+00 3.400e-01 6.600e-01 1.590e+01 4.600e-02 2.600e+01 1.640e+02 9.979e-01 3.140e+00 5.000e-01 8.800e+00] [7.400e+00 2.500e-01 3.700e-01 1.350e+01 6.000e-02 5.200e+01 1.920e+02 9.975e-01 3.000e+00 4.400e-01 9.100e+00] [7.100e+00 1.200e-01 3.200e-01 9.600e+00 5.400e-02 6.400e+01 1.620e+02 9.962e-01 3.400e+00 4.100e-01 9.400e+00] [6.000e+00 2.100e-01 2.400e-01 1.210e+01 5.000e-02 5.500e+01 1.640e+02 9.970e-01 3.340e+00 3.900e-01 9.400e+00] [7.500e+00 3.050e-01 4.000e-01 1.890e+01 5.900e-02 4.400e+01 1.700e+02 1.000e+00 2.990e+00 4.600e-01 9.000e+00] [7.400e+00 2.500e-01 3.700e-01 1.350e+01 6.000e-02 5.200e+01 1.920e+02 9.975e-01 3.000e+00 4.400e-01 9.100e+00] [7.300e+00 1.300e-01 3.200e-01 1.440e+01 5.100e-02 3.400e+01 1.090e+02 9.974e-01 3.200e+00 3.500e-01 9.200e+00] [7.100e+00 1.200e-01 3.200e-01 9.600e+00 5.400e-02 6.400e+01 1.620e+02 9.962e-01 3.400e+00 4.100e-01 9.400e+00] [7.100e+00 2.300e-01 3.500e-01 1.650e+01 4.000e-02 6.000e+01 1.710e+02 9.990e-01 3.160e+00 5.900e-01 9.100e+00] [7.100e+00 2.300e-01 3.500e-01 1.650e+01 4.000e-02 6.000e+01 1.710e+02 9.990e-01 3.160e+00 5.900e-01 9.100e+00] [6.900e+00 3.300e-01 2.800e-01 1.300e+00 5.100e-02 3.700e+01 1.870e+02 9.927e-01 3.270e+00 6.000e-01 1.030e+01] [6.500e+00 1.700e-01 5.400e-01 8.500e+00 8.200e-02 6.400e+01 1.630e+02 9.959e-01 2.890e+00 3.900e-01 8.800e+00] [7.200e+00 2.700e-01 4.600e-01 1.875e+01 5.200e-02 4.500e+01 2.550e+02 1.000e+00 3.040e+00 5.200e-01 8.900e+00] [7.200e+00 3.100e-01 5.000e-01 1.330e+01 5.600e-02 6.800e+01 1.950e+02 9.982e-01 3.010e+00 4.700e-01 9.200e+00] [6.700e+00 4.100e-01 3.400e-01 9.200e+00 4.900e-02 2.900e+01 1.500e+02 9.968e-01 3.220e+00 5.100e-01 9.100e+00] [6.700e+00 4.100e-01 3.400e-01 9.200e+00 4.900e-02 2.900e+01 1.500e+02 9.968e-01 3.220e+00 5.100e-01 9.100e+00] [5.500e+00 4.850e-01 0.000e+00 1.500e+00 6.500e-02 8.000e+00 1.030e+02 9.940e-01 3.630e+00 4.000e-01 9.700e+00]]
#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Fri Aug 10 16:13:29 2018 svm-葡萄酒质量预测 @author: myhaspl@myhaspl.com @blog:https://blog.csdn.net/myhaspl """ import pandas as pd import numpy as np from sklearn import svm testDf=pd.read_csv("winequality-white-test.csv",sep=";") testData=testDf.values wineDf=pd.read_csv("winequality-white.csv",sep=";") wineData=wineDf.values dataColName=wineDf.columns rsColName=dataColName[-1] ftColName=list(dataColName[:len(dataColName)-1]) testFeature=testDf[ftColName].values testResult=testDf[rsColName].values wineFeature=wineDf[ftColName].values wineResult=wineDf[rsColName].values clf = svm.SVC(gamma='scale') clf.fit(wineFeature,wineResult) y_pred=clf.predict(testFeature) print y_pred print testResult [6 6 6 6 6 6 6 6 6 6 6 6 6 5 6 6 6 6 6 6 6 5 6 6 6 6 6 5 6 6 6 5 6 6 6 5 5 6 5 5 5 6 5 5 5 6 6 5 5 6 6 5 5 6 6 5] [6 6 5 6 6 5 7 5 8 5 6 5 5 6 8 5 7 7 5 5 6 6 5 6 5 6 6 6 5 6 6 5 7 7 7 6 6 7 4 6 5 5 5 5 5 6 5 6 6 5 6 5 5 5 5 4]
boolean to int
m = [True, False, True, True] map(lambda x: 1 if x else 0, m) [1, 0, 1, 1]
#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Fri Aug 10 16:13:29 2018 svm-葡萄酒质量预测 @author: myhaspl@myhaspl.com @blog:https://blog.csdn.net/myhaspl """ import pandas as pd import numpy as np from sklearn import svm testDf=pd.read_csv("winequality-white-test.csv",sep=";") testData=testDf.values wineDf=pd.read_csv("winequality-white.csv",sep=";") wineData=wineDf.values dataColName=wineDf.columns rsColName=dataColName[-1] ftColName=list(dataColName[:len(dataColName)-1]) testFeature=testDf[ftColName].values testResult=testDf[rsColName].values wineFeature=wineDf[ftColName].values wineResult=wineDf[rsColName].values clf = svm.SVC(gamma='scale') clf.fit(wineFeature,wineResult) y_pred=clf.predict(testFeature) print y_pred print testResult predWine=np.equal(y_pred,testResult) correctCount=float(sum(map(lambda x: 1 if x else 0, predWine))) print "正确样本数:%d,总测试样本数:%d,正确率:%g"%(correctCount,len(testResult),correctCount/len(testResult))
[6 6 6 6 6 6 6 6 6 6 6 6 6 5 6 6 6 6 6 6 6 5 6 6 6 6 6 5 6 6 6 5 6 6 6 5 5 6 5 5 5 6 5 5 5 6 6 5 5 6 6 5 5 6 6 5] [6 6 5 6 6 5 7 5 8 5 6 5 5 6 8 5 7 7 5 5 6 6 5 6 5 6 6 6 5 6 6 5 7 7 7 6 6 7 4 6 5 5 5 5 5 6 5 6 6 5 6 5 5 5 5 4] 正确样本数:20,总测试样本数:56,正确率:0.357143
再来看看核函数
import pandas as pd import numpy as np from sklearn import svm testDf=pd.read_csv("winequality-white-test.csv",sep=";") testData=testDf.values wineDf=pd.read_csv("winequality-white.csv",sep=";") wineData=wineDf.values dataColName=wineDf.columns rsColName=dataColName[-1] ftColName=list(dataColName[:len(dataColName)-1]) testFeature=testDf[ftColName].values testResult=testDf[rsColName].values wineFeature=wineDf[ftColName].values wineResult=wineDf[rsColName].values clf = svm.SVC(gamma='scale',kernel='sigmoid') clf.fit(wineFeature,wineResult) y_pred=clf.predict(testFeature) print y_pred print testResult predWine=np.equal(y_pred,testResult) correctCount=float(sum(map(lambda x: 1 if x else 0, predWine))) print "正确样本数:%d,总测试样本数:%d,正确率:%g"%(correctCount,len(testResult),correctCount/len(testResult))
[6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6] [6 6 5 6 6 5 7 5 8 5 6 5 5 6 8 5 7 7 5 5 6 6 5 6 5 6 6 6 5 6 6 5 7 7 7 6 6 7 4 6 5 5 5 5 5 6 5 6 6 5 6 5 5 5 5 4] 正确样本数:21,总测试样本数:56,正确率:0.375