繼續讀取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