python常用处理数据的函数

Posted on 2021-08-18 11:12  Smilesq  阅读(264)  评论(0编辑  收藏  举报
  • 读取文件 
    data=pd.read_csv(f1,header=None)或 pd.read_excel(path,header=None)此时数据没有第一行属性,读取所有数据
  • 写入文件
    data.to_csv(f1,index=False,header=None)如果index为True存储数据第一列为数据行序号,如果header=True表示数据第一行为数据列序号
  • 转换np.array型矩阵维数
    data=data.reshape(20000,1)
  • 数据格式转化
    将数据转换成DataFrame格式:data=pd.DataFrame(data=data) 将数据转换为numpy数组形式:data=np.array(data)
  • 数据处理方法
  1. 数据提取:data=data[1:,1] [行开始:行结束,列开始:列结束](结束序号是不能取到该数据的)
  2. 查看数据是否在一个数组中:数字/字符 in  数组名   exp: 2 in [3,2,5] 返回True | '_' in 'insk_kol'
  3. 添加数据:list形式的数据格式可以用 listname.append(data)  a=[]  a.append()
  4. 删除数据:根据文件路径删除文件:io.remove(path) 删除数据:(1)数组名.remove(删除指定数据)(2)根据index删除:a=[1,2,3] del a[1]输出结果为:[1,3]    参考博客:https://www.cnblogs.com/xpvincent/p/13402342.html

         5. 查看数组维数:名字.shape   

1 import numpy as np
2 a=np.random.randint(3,size=6)
3 print(a)
4 print(a.shape)

     

A=np.array([[1,2,3,4,5,6]])
print(A)
print(A.shape)

 

        6. 数组维数转化:arrayName.reshape(新的维数) 或 np.reshape(arrayName,(新的维数))

import numpy as np
a=np.random.randint(3,size=6)
print(a.shape)
#第一种形式
a=a.reshape(2,3)

A=np.array([[1,2,3,4,5,6]])
#第二种形式
A=np.reshape(A,(3,2))

        7.numpy与list之间相互转换,查看数据类型用type(Name)

A=np.array([[1,2,3,4,5,6]])
print('原始A的类型:',type(A))
B=A.tolist()
print('A转换为list:',type(B))
C=np.array(B)
print('B转换为Numpy:',type(C))

 

        8. 数组维数的区别

A=np.array([1,2,3,4,5,6])
print('A:',A)
print('A的维数:',A.shape)
print('A的第一个元素:',A[0])
B=np.array([[1,2,3,4,5,6]])
print('B',B)
print('B的维数:',B.shape)
print('B的第一个元素:',B[0])

 

  •  文件处理方法
  1. 批量读取一个文件夹下所有.csv文件的名字
def get_file(path):  # 创建一个空列表
    files = os.listdir(path)
    list = []
    for file in files:
        if not os.path.isdir(path + file):  # 判断该文件是否是一个文件夹
            f_name = str(file)
            #             print(f_name)
            tr = '\\'  # 多增加一个斜杠
            filename = path + tr + f_name
            #filename =  f_name
            list.append(filename)#得到所有
    return list

         2.截取文件名

path=r'E:\\csvData\6-29W\Threed3\T21.csv'
fileName=os.path.basename(path)
print(fileName)

 

       3.名字分割

path=r'E:\\csvData\6-29W\Threed3\T21.csv'
fileName=os.path.basename(path)
fileName=fileName.split('.')[0]#依据‘.’符号进行分割,取前面的字段
print(fileName)