1. 程式人生 > >List tuple 型別轉成陣列

List tuple 型別轉成陣列

SKlearning大部分的輸入資料都是M * N陣列.

然而我們從資料庫或檔案讀取得來的通常是Python內定的型別tuple或list

它們的優勢就不說了,但是直接把list或tuple構成的二維陣列傳入scikit是會出問題的. 

如:

1 2 DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19. Reshape your data either using
 X.reshape(-1, 1) if your data has a single feature or X.reshape(1, -1) if it contains a single sample. DeprecationWarning)

下面貼上如何把list/tuple轉為scikit使用的array

首先, 準備資料如下:

讀取一行資料變為一維陣列

複製程式碼
    conn = sql.connect('result_sale.db')
    conn.text_factory = str
    dataSet 
= conn.execute('select * from sampleData') tpRows = dataSet.fetchone() conn.close() print type(tpRows) print tpRows lstRows = list(tpRows) aryRows1 = np.array(lstRows) # 轉成陣列 #aryRows2 = np.array(lstRows).reshape(1, -1) # 轉成1行N列 (二維陣列) #aryRows3 = np.array(lstRows).reshape(-1, 1) # 轉成N行1列 (二維陣列)
print lstRows print aryRows1
複製程式碼

輸入如下: 請留意輸入的不同點 :)

1 2 3 4 5 ('00''01''02''03''04''05''06''07''08')  (tuple) ['00''01''02''03''04''05''06''07''08']  (list) ['00' '01' '02' '03' '04' '05' '06' '07' '08']          (array) Process finished with exit code 0

一次性轉換整個資料集

複製程式碼
    conn = sql.connect('result_sale.db')
    conn.text_factory = str
    dataSet = conn.execute('select * from sampleData')
    tpRows = dataSet.fetchall()
    conn.close()

    aryRows1 = np.array(tpRows)  # 轉成陣列
    #aryRows2 = np.array(tpRows).reshape(1, -1)  # 轉成1行N列 (二維陣列)
    #aryRows3 = np.array(tpRows).reshape(-1, 1)  # 轉成N行1列 (二維陣列)
    print aryRows1
    #print aryRows2
    #print aryRows3
複製程式碼

輸入如下:

1 2 3 4

相關推薦

List tuple 型別陣列

SKlearning大部分的輸入資料都是M * N陣列. 然而我們從資料庫或檔案讀取得來的通常是Python內定的型別tuple或list 它們的優勢就不說了,但是直接把list或tuple構成的二維陣列傳入scikit是會出問題的.  如:

Android ---------List 數組 json格式的字符串

() nta lib end 字符 下載 true file lis 1.Gson方法  (1)在build.gradle(Module:app) 中 添加 dependencies { implementation files(‘libs/gson-2.7.ja

字串陣列

  java.lang包中有String.split()方法,java中通常用split()分割字串,返回的是一個數組。 特殊,轉義字元,必須加"\\"(“.”和“|”都是轉義字元) 示例: 1、如果用“.”作為分隔的話,必須是如下寫法,String.split("\\."

把物件陣列

var json = { name: 'shskfh', id: 1, profit: 20, percent: '20%',

Java後臺跳到前端頁面傳遞字串陣列,前端接收陣列物件

1、後臺使用JFinal 框架:     setAttr("list",JsonKit.toJson(page));  //這裡使用JsonKit先將集合轉成json,這樣傳到前臺就會是標準的 key,value都帶有    // 雙引號的字串, 如果直接放入集合沒轉成j

java int型別byte陣列

這裡只寫了幾個 轉換程式     主要是java和其他語言互動時的大小端問題     //高前低後 public static byte[] intToByteArray( int integer)

js偽陣列陣列

偽陣列arrayLike,必須按照索引儲存,具有length屬性,缺少陣列的push,pop等方法 var arrayLike = {     0: "a",     1: "b",     2: "c",     3: "d",     length:4 }; 方法一 v

parse_str()—將url引數字串陣列

將url引數字串轉成陣列 <?php //前提是要把字串變成這個樣子“name=Bill&age=60” parse_str("name=Bill&age=60"); echo

PHP csv檔案內容陣列/Json

$lines = array_map('str_getcsv', file($filePath));; $result = array(); $headers = null; if (count($lines) > 0) { $headers = $lines[0]; }

使用fastJson將Long型別String

由於Long型別返回給前端時,如果數值過大,會導致精度丟失,這時候就需要把Long轉成String。 這時候如果專門為其寫一個屬性來儲存,比較麻煩。這時候可以使用fastJson裡的標籤  @JSONField(serializeUsing = ToStringSeria

陣列的通用函式

var toArray = function(s){         try{             return Array.prototype.slice.call(s);         }

Jackson反序列時,將LinkedHashMap物件(Object型別實體)

可能存在這樣一種情況,Jackson已經滿足了大部分的序列化和反序列化工作,但是對於複雜的泛型實體估計未必能如願的正常反序列,而此時對於一些泛型裡面的實體物件就會反序列化成LinkedHashMap型別的。 同樣,這個型別不能直接強制轉換成想要的實體,此時要解決此類問題的思

php解析字串json再陣列

//字串裝json再轉陣列 $data=$this->str_change($_POST['upimg']); /** * 物件 轉 陣列 * * @param object $obj 物件 * @return array */ function obj

Java 陣列如何List集合

問題描述:對於給定的如下陣列,如何轉換成List集合? String[] array = {"a","b","c"}; 總結如下幾種寫法: 1.使用原生方式,拆分陣列,新增到List List<String> resultList = new ArrayL

優化改良版:陣列List,等集合需要加逗號或其它符合字串

大家經常需要陣列加逗號拼接成字串的情況傳統作法就是寫for,foreach拼接, 現給出優化改良版陣列,List,等集合需要加逗號或其它符合轉成字串方法: 1 List<string> ls=new List<string>{ "lshiyh1", "lshiyh2", "l

C# arrayList陣列list陣列

 attachment是一個動態陣列(ArrayList) ArrayList可以儲存任何型別的物件。attachments.Add(Object value)   List<string> files = new List<string>((st

list集合對應型別的物件陣列

package com.mbit.test1; import java.util.ArrayList; import java.util.Arrays; import java.util.List;

java將"[a,b,c]" 型別字串 list 即[a,b,c]格式

參考:https://zhidao.baidu.com/question/427016122.html String demo = "[a,b,c]"; String demosub = demo.substring(1,demo.length()-1); String demoArray[]

動態轉換list的資料型別,將map型別的list實體類型別的

/** * 將一個map組成的list轉成實體類bean組成的list * @param mapList 存了map物件的list * @param clazz 需要將這些map轉成哪個實體類物件 * @return */ public <T&g

java中陣列快速List集合

java中,如果想把一個數組轉換成為List集合,我們一般會使用Arrays.asList()方法,程式碼如下: public class ArrayTest1 { public static void main(String[] args) { String[] arr