代码之家  ›  专栏  ›  技术社区  ›  Shankar Panda

在python中,如何仅选择数字数据类型并将其保存在数组中?

  •  1
  • Shankar Panda  · 技术社区  · 6 年前

    编辑:我添加了一个示例行

    enter image description here

    这里F1和F3是数值场。所以我想在数组变量中保留这两个字段名 字段名=[“F1”,“F3”]

    import csv
    import pandas as pd
    import numpy as np
    
    data = pd.read_csv(r'C:\Users\spanda031\Downloads\test_19.csv')
    print(data.dtypes)
    with open(r'C:\Users\spanda031\Downloads\test_19.csv') as f:
        d_reader = csv.DictReader(f)
    
        #get fieldnames from DictReader object and store in list
        headers = d_reader.fieldnames
        print(headers)
        for line in headers:
            #print value in MyCol1 for each row
            print(line)        
            v3=np.array(data[line])
    
    2 回复  |  直到 6 年前
        1
  •  2
  •   jpp    6 年前

    select_dtypes

    你可以用 np.number 或者,如文件所示, 'number' 要选择所有数字系列,请执行以下操作:

    # read csv file
    df = pd.read_csv('file.csv')
    
    # subset dataframe to include only numeric columns
    df = df.select_dtypes(include='number')
    
    # get column labels in array
    cols = df.columns.values
    
    # extract NumPy array from dataframe
    arr = df.values
    

    csv pd.read_csv .

        2
  •  0
  •   Abhishek Singh    6 年前

    isdigit 可用于检查Python中数据帧的任何列中是否只存在数值。假设列名为Measure,则可以编写

    df['Measure_isdigit'] = map(lambda x: x.isdigit(), df['Measure'])
    

    打印df