精华内容
下载资源
问答
  • 2020-11-20 22:29:03

    展开全部

    概述

    直接2113提取会报错,把array数组转换5261成list,即可提4102取,使用numpy转换

    步骤详解

    1、直接提取尝试1653:group=[[1,2],[2,3],[3,4]]

    #提取第一列元素

    print(group[:,1])

    #Out:TypeError: list indices must be integers or slices, not tuple

    2、使用numpy转换:import numpy as np

    group=[[1,2],[2,3],[3,4]]

    #numpy转化

    ar=np.array(group)

    print(ar[:,1])

    #Out:[2 3 4]

    拓展内容

    numpy详解

    resize,m_lfit,w_600,h_800,limit_1

    Numpy对象是数组,称为ndarray

    维度(dimensions)称作轴(axes),轴的个数叫做秩(rank)。注:有几级中括号就有几个维度

    一、ndarray.attrs:ndarray.ndim 秩

    ndarray.shape 例如一个2排3列的矩阵,它的shape属性是(2,3)

    ndarray.size 数组元素的总个数

    ndarray.dtype 元素类型,NumPy提供自己的数据类型

    ndarray.itemsize 数组中每个元素的字节大小

    二、数组创建函数:array

    asarray将输入转换成ndarray

    arange

    ones

    zeros

    empty 只分配内存空间不填充任何值

    eye 创建N*N单位矩阵(对角线为1)

    三、数组和标量之间的运算

    numpy数组的一个特点,不用编写循环就可对数据执行批量运算,这通常称作矢量化(vectorization)。

    四、基本的索引和切片

    numpy数组的索引是一个内容丰富的主题,因为选取数据子集或单个元素的方式有很多。这里我仅详细介绍常用的方法,对于高级功能的方式我列举名称,读者可以等到要用的时候自行查阅资料。

    更多相关内容
  • 人生不是种享乐,而是桩十分沉重的工作。

    系列文章目录


    前言

    一、问题描述

    有多个excel数据,其中每个文件内容格式相同!!
    我们需要提取每个文件里面指定的一列(黄色列)数据,并保存到新工作表!!!
    在这里插入图片描述
    提取前:
    在这里插入图片描述
    提取后:
    在这里插入图片描述

    二、提取方法

    代码如下(示例):

    import xlrd
    import xlwt
    from xlutils.copy import copy
    import os
    import  pandas  as pd
    
    
    def create_excel(path, sheet_name):
        workbook = xlwt.Workbook()  # 新建一个工作簿
        workbook.add_sheet(sheet_name)  # 在工作簿中新建一个表格
        workbook.save(path)  # 保存工作簿
    
    def read_data(FileName):
        # 1.打开文件
        open_file = xlrd.open_workbook(FileName)
    
        # 2.读取第二列的内容(表中第一列索引值为0)
        st = open_file.sheet_by_index(0)  #选取第一个工作表
        data = [st.cell_value(i,7) for i in range(1, st.nrows)]
    
        # 3.将表名追加到列表作为第一个元素
        title = open_file.sheet_names()
        data = title + data
    
        return data
    
    
    def write_data(path, data):
        index = len(data) # 获取索引写入的行数
        workbook = xlrd.open_workbook(path) # 打开工作簿
        sheets = workbook.sheet_names()  # 获取工作簿中的所有表格
        worksheet = workbook.sheet_by_name(sheets[0])  # 获取工作簿中所有表格中的的第一个表格
        cols_old = worksheet.ncols  # 获取表格中已存在的数据的列数
    
        new_workbook = copy(workbook)  # 将xlrd对象拷贝转化为xlwt对象
        new_worksheet = new_workbook.get_sheet(0)  # 获取转化后工作簿中的第一个表格
        for i in range(0, index):
                new_worksheet.write( i, cols_old + 2, data[i])  # 追加写入数据		
        new_workbook.save(path)  # 保存工作簿
    		
    
    def get_file_name(file_dir):
        tmp_lst = []
        for root, dirs, files in os.walk(file_dir):
            for file in files:
                tmp_lst.append(os.path.join(root, file))
        return tmp_lst
    
    def main():
        DIR_NAME = r'E:\test\\'
        create_excel(DIR_NAME + '合并.xls','汇总数据')
        print(DIR_NAME + '合并.xls')
        tmp_list = get_file_name(DIR_NAME + 'data\\')
        for dir in tmp_list:
            data = read_data(dir)
    #        data1 = read_data1(dir)
            write_data(DIR_NAME + '\合并.xls', data)
    #        write_data(DIR_NAME + '\合并.xls', data)
            print('------------'+ dir.split("\\")[-1] + '数据写入成功!-----------' )
    
    if __name__ == '__main__':
        main()
    

    总结

    分享:
    从我自己痛苦的探索中,我了解前面有许多死胡同,要朝着理解真正意义的事物迈出有把握的一步,即使是很小的一步也是很艰巨的。 ——爱因斯坦

    展开全文
  • 既可以用数组名跟圆括号,行号,号表示,又可以用个参数表示。注意个参数表示时,MATLAB是优先的,千万别弄错。例如:A=[1,2,3;4,5,6;7,8,9];则A(2,1)=4。千万别写成A[2,1]!如果用维表示是:A(2)=4,千万...

    既可以用数组名跟圆括号,行号,列号表示,又可以用一个参数表示。注意一个参数表示时,MATLAB是列优先的,千万别弄错。例如:A=[1,2,3;4,5,6;7,8,9];则A(2,1)=4。千万别写成A[2,1]!如果用一维表示是:A(2)=4,千万别写成A(4)!不信你可以上机试试www.mh456.com防采集。

    解决这个问题的方法如下:

    a(rows,cols),其中rows表示行数,cols表示列数。如a(3,2:4)表示a的第3行第2到4列。觉得有帮助就采纳吧。

    02ae878b928bd313fa2343892e2ada10.png

    1、第一步打开matlab命令行窗口,bai输入a=[1 2 3;4 5 6;7 8 9;6 4 7],创建一个a矩阵。

    如果不想影响a,可以先用b存起a 然后对b操作,删除掉不要的行就可以了 a=magic(3);b=a;b(2,:)=[] b= 8 1 6 4 9 2

    eb4f05a96e17bfc5153197ebdfe457f4.png

    1bc432970a992a321f3af1b8695e264d.png

    2、第二步输du入a(1:2,1:3),进行提取a矩阵zhi的第1,2行第dao1到3列。

    在matlab中,取出矩阵中某一个值的方法如下: 1、对于二维数组: a(i,j)%表示取出二维数组a的第 i 行,第 j 列的数据 a(:,j)%表示取出二维数组a的第 j 列的所有数据 a(i,:)%表示取出二维数组a的

    a23de08a2228a29765bd4f0e79afc5a7.png

    44e74094e55770edae9ac9b2dbe46b2a.png

    3、第三步按回车键之后内,可以看到已经提取了a矩阵的第1,2行第1到3列。

    T=randint(382,4,[1 50]);将 T 换成自己的矩阵数据 L=T(:,4);A=T(L,:)

    df8d7e59ee1396942be9d23a921f0d24.png

    ca0b53077d423a62084cda37bb09dea0.png

    4、第四步输入 a(2:3,1:2),进行提取a矩阵第2到3行第1到2列。

    MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB

    e29d54c5047bfd4cdec71043cc31cecb.png

    35ba98e34f595e237b4d8c5a95f33e26.png

    5、第五步按回车键之后,可以看到提取了a矩阵第2到3行第1到2列,根容据需要提取矩阵就可以。

    18e829272185cd37df53788ea324fbe3.png

    使用a(M,N)可以提取矩阵a中符合M,N要求的部分最简单是M,N都是来标量,就是一个数例如a(1,1) a(2,3)分别返回自a矩阵1行1列的单元 和 2行3列的单元M,N还可以是矢量,例如a([1 2 3 4],[2 3]) 返回 1 2 3 4行 2 3 列的数据这里还有通配的技巧,例如a(1,:)就是返回a矩阵第bai一行的所有数据等效于a(1,1:end)或a(1,1:size(a,2))M,N矢量还可以是不连续的,不是单du调的,或者有重复的,例如a(1:2:end,:) a(2:2:end,:)分别提取矩阵a的奇数行和偶数行数据重新组成矩阵a(end:-1:1,:) a(:,end:-1:1)分别返回a矩阵行zhi倒序和列倒序的矩阵总之matlab通过的dao下标提取矩阵部分是很灵活的假设你要提取矩阵a第n列的数据,使用a(:,n)就可以了如果是要提取第n列前10个数据使用a(1:10,n)就可以了本回答被网友采纳

    使用a(M,N)可以提取矩2113阵a中符合M,N要求的部分最简单是M,N都是标量,就是一个数例如5261a(1,1) a(2,3)分别返回a矩阵1行1列的单元 和 2行3列的单元M,N还可以是矢量,例如a([1 2 3 4],[2 3]) 返回 1 2 3 4行 2 3 列的4102数据这里还有通配的技巧,例如a(1,:)就是返回a矩阵第一行的所有数据等效于1653a(1,1:end)或a(1,1:size(a,2))M,N矢量还可以是不连续的,不是单调的,或者有重复的,例如a(1:2:end,:) a(2:2:end,:)分别提取矩阵a的奇数行专和偶数行数据重新组成矩阵a(end:-1:1,:) a(:,end:-1:1)分别返回a矩阵行倒序和列倒序的矩阵总之matlab通过的下标提取矩阵部分是很灵活的假设你要提取矩阵a第n列的数据,使用属a(:,n)就可以了如果是要提取第n列前10个数据使用a(1:10,n)就可以了

    假设A是10x 10的矩阵,那么自提取第21135列中的部分数据可以采用以下方5261法:1, A(:,5) %提取41025列全部2, A(2:5,5);%提取5列中2到5行的数据16533, A(3,5);%提取5列中第三行的数据4, A(A(:,5)==x,5); %提取第5列中等于值x的那个数据

    可以把矩阵的参数幅值早工作区域,然后双击矩阵,就可以了

    内容来自www.mh456.com请勿采集。

    展开全文
  • Series格式和ndarray格式提取特定的一列数据读取数据Series中提取一列数据ndarray中提取一列数据数据集的图表展示 本文使用的数据集是鸢尾花,代码写在jupy notebook。 数据集内包含 3 类共 150 条记录,...

    本文使用的数据集是鸢尾花,代码写在jupy notebook中。
    数据集内包含 3 类共 150 条记录,每类各 50 个数据,每条记录都有 4 项特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度,可以通过这4个特征预测鸢尾花卉属于(iris-setosa, iris-versicolour, iris-virginica)中的哪一品种。

    读取数据

    人为的给数据集添加特征名,names = [‘sepal_len’, ‘sepal_wid’, ‘petal_len’, ‘petal_wid’, ‘class’]

    import numpy as np
    import pandas as pd
    
    df = pd.read_csv('iris.data', header = None, names = ['sepal_len', 'sepal_wid', 'petal_len', 'petal_wid', 'class']) 
    print(df.shape)
    df.head()
    

    运行结果:
    在这里插入图片描述

    Series中提取某一列数据

    将原始数据集划分为训练集和标签,划分后的X和Y是Series类型。用bool型数据做索引,提取标签为“Iris-setosa”的子块。

    X = df.iloc[:,0:4]
    Y = df.iloc[:,4]
    print(type(Y))
    X[Y=='Iris-setosa'].head() 
    

    运行结果:
    在这里插入图片描述
    提取特定的某一列的操作方式如下(标签为“Iris-setosa”,特征为“sepal_len”)

    X[Y=='Iris-setosa']['sepal_len'].head()   #取特定的列
    

    运行结果:
    在这里插入图片描述

    ndarray中提取某一列数据

    将原始数据集划分为X和Y,.values作用是将矩阵转为ndarray型,为了画图时传入参数矩阵

    X = df.iloc[:,0:4].values
    Y = df.iloc[:,4].values
    type(X)
    

    运行结果:
    在这里插入图片描述
    提取特定的某一列的操作方式如下(标签为“Iris-setosa”,特征为第一列,即“sepal_len”)

    #numpy中使用bool型数据做索引,画图时要用到
    X[Y=='Iris-setosa', 0]
    

    运行结果:
    在这里插入图片描述

    数据集的图表展示

    from matplotlib import pyplot as plt
    import math
    
    #用字典的格式定义图表的table
    label_dict = {1: 'Iris-Setosa',
                  2: 'Iris-Versicolor',
                  3: 'Iris-Virgnica'}
    feature_dict = {0: 'sepal length [cm]',
                    1: 'sepal width [cm]',
                    2: 'petal length [cm]',
                    3: 'petal width [cm]'}
                    
    plt.figure(figsize=(8, 6))   #设置画布大小
    for cnt in range(4):
        plt.subplot(2, 2, cnt+1)
        #在每一个子图中,画出三种类别的数据分布直方图
        for lab in ('Iris-setosa', 'Iris-versicolor', 'Iris-virginica'):  
            plt.hist(X[Y==lab, cnt], label=lab, bins=10, alpha=0.3)
        plt.xlabel(feature_dict[cnt])    #设置X轴的标签
        plt.legend(loc='upper right', fancybox=True, fontsize=8)   #在右上方展示类别标签,标签框大小为8
    
    plt.tight_layout()   #tight_layout会自动调整子图参数,使之填充整个图像区域
    plt.show()
    

    运行结果:
    在这里插入图片描述

    展开全文
  • 通常在Excel从一列中提取包含指定内容的数据,可以用自动筛选的自定义筛选,并设置所包含的字符。如果要用公式来实现这种类似筛选的效果,可以在数组公式中用SEARCH函数来查找所包含的字符。假如在A2:A100区域...
  • 我有个csv文件,我想从中提取ratings和comments字段,并将其存储在两个变量-rating和comment。这个过程完成后,我需要查看提取数据。CSV文件存储的数据如下:在我的dataclean python文件,目前编写的代码...
  • 系列文章目录 文章目录 系列文章目录 前言 一、问题描述 1、获取黄色单元格的数据(即每一行最后一个数据) 2、`=LOOKUP(9E+307,A2:H2)` 二、问题描述 1、获取黄色单元格的数据(即每一列最后一个数据) 2、`=LOOKUP...
  • 如何提取matlab某一行一列数据

    千次阅读 2021-01-26 20:44:40
    比如,从一个6*6矩阵提取它的第行元素,形成个6维行向量。 A(i,:)行 A(:,i) 方法: A(i,:) 提取矩阵A的第 i行 A(:,i) 提取矩阵A的第 i 给你个例子: A=[1:6;2:7;3:8;4:9;5:10;6:11] A...
  • 举个例子,我R导入了个较大的行列数据,但是我只需要部分指定列,例如我只需要第1,3,5,7,9,11,13,15,17列(当然我需要的不仅仅这么多),并且将调出来的列数据重新生成个行列数据表,该怎么写这个for循环,谢谢...
  • DataFrame根据指定范围的元素提取已有列数据中包含元素的数据并形成一列1 问题解释2 测试数据3 测试代码3.1 已有的数据3.2 指定范围的数据3.3 匹配数据4 结果验证 手动反爬虫,禁止转载:原博地址 ...
  • for i in list: print i其实Python只有列表list。如何用python遍历个 object数组python的numpy模块获得array数组怎么circle画点?怪只怪,单薄的青春里,我无所事事,轻薄桃花魅惑了我的眼,你青色的衣襟春水涨...
  • 笔者最近在做个数据库项目,其中需要EXCEL中提取关键字段。提取内容如下图所示,需要将图加粗部分单独提出后进行去噪处理。如果通过word处理,文字量小的时候尚可实现,但几十万字的处理量很容易就造成假死。...
  • 怎么用matlab读取excel表格一列十六进制数据?x=xlsread('oillack.xls','sheet1','a1:a73')excel文件名是oillack.xls,sheet1是表名,a1:a73'是a列的1到73行如何使用Matlab提取Excel中指定列的数据?方法和详细...
  • 【python】提取excel的某一列数据

    万次阅读 多人点赞 2019-03-11 15:09:44
    import xlrd def extract(inpath): data = xlrd.open_workbook(inpath, encoding_override='utf-8') table = data.sheets()[0]#选定表 nrows = table.nrows#获取行号 ncols = table.ncols#获取号 ...
  • Dataframe 提取一列数据 并转为列表的形式
  • 2. 如果你想导出拆分后数据,你希望勾选那一列就导出那一列数据,勾选多列就导出多列数据; 3. 如果你想让某列按日期范围导出数据,就能按某列的日期范围导出数据; 4. 如果你想按某列的数值大小范围导出数据,就...
  • 系列文章目录 文章目录 系列文章目录 前言 一、python提取excel指定一列保存到新表 二、python提取excel指定两列保存到新表 总结 前言 一、python提取excel指定一列保存到新表 原数据举例如下: 提取B列另存到新表 ...
  • Excel 如何按指定列提取数据并追加到新表的列 存在多个Excel文件,把每个Excel文件的B列,提取出来,放到新表的列,第一个文件或Sheet的B列放第一列,第二个文件或Sheet的B列放第二列..... 这个有一个方便性...
  • Python numpy 提取矩阵的某一行或某一列的实例下面小编就为大家分享一篇Python numpy 提取矩阵的某一行或某一列的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧如下所示:import numpy as ...
  • df = pd.read_excel(filename,index_col=0) # 即指定第列为行索引 print(df) print('第0行第1数据为:',df.iloc[0,1]) print('第three行第二数据为:',df.loc['three','二'])
  • 1.首先打开原文本文件(或者...3.把文件的所有数据按照格式对齐。能显示的字符要上下对齐。达到下面的这种形式。 4.最关键的一步。把键盘的输入光标(条竖的斜线提示的位置)定位(通过鼠标或者方向键)到
  • 展开全部获取DataTable某一列所有值,并存放32313133353236313431303231363533e59b9ee7ad9431333431373935到List;1)方法一://遍历DataTable,取出所有的ID :List lstID = (from d in dt.AsEnumerable() select ...
  • EXCEL函数实现从列数据中提取不重复值
  • 已经把excel的一列导入到matlab的工作区,怎么计算这一列数的均值、标准差、最小值、最大值以及位数?把这个EXCEL放到matlab目录下的work里,假设名为1.xls,然后在matlab里A=xlsread('1.xls'),即可导入,这时A是一个...
  • 本程序需要结合文件名提取脚本和多文件数据提取文件脚本操作。源代码如下:#!usr\bin\python # -*-coding:utf-8 -*- import csv import pandas as pd import numpy as np import winreg import os ''' 1.打开链表...
  • Python 如何循环读取csv或者excel一列数据,写入到搜索是可以 a.csv复制到 b.csvimport csvdef foo():with open('a.csv', 'r') as f:reader = csv.DictReader(f)rows = [row for row in reader]if not rows:...
  • 如何将Excel数据导入MATLAB1、第步我们首先需要需要导入的excel表格,这格需要是office版其它的导入有,我们可以使用电脑自带的2003版本office2、第二步我们打开软件,点击上方的导入数据3、第三步点击之后,...
  • 二、Pandas数据框操作及数据提取 #导包 import pandas as pd import numpy as np 数据框行列操作 1.1 创建DataFrame data = {"col1":['Python', 'C', 'Java', 'R', 'SQL', 'PHP', 'Python', 'Java', 'C', 'Python...
  • 用Python修改excel中一列数据可以使用pandas库,先读取excel文件,然后使用pandas库来修改一列,然后写入文件即可。怎样用python,读取excel一列数据sheet.cell_value(r,c) ,r行数自己循环一下,c是你要的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 268,857
精华内容 107,542
关键字:

从一列数据中提取数据