机器学习数据处理

  例2.2数值类型不可改变

i = 3

print(id(i))

i += 1

print(id(i))

例2.3字符串的访问

str = 'Picture'

print (str[1:3])   # 第二、三个字符

print (str[-3:-1]) # 倒数第二、三个字符

print (str[3:-1])  # 正数第四个到倒数第二个字符

print (str[-6:7])  # 倒数第六个到正数第七个字符

print (str[2:])    # 第三个字符开始的所有字符

print (str * 2)    # 输出字符串两次

print (str + "TEST") # 连接字符串

例2.4字符串赋值 

​​​​

word = 'Python'

print(word[0], word[5])

print(word[-1], word[-6])

如果继续添加一行语句:

word[0] = Q'

 

2.5列表的访问。

list = [ 'a', 56 , 1.13, 'HelloWorld',[7,8,9] ]

print(list)       #完整列表

print(list[4])    # 第五个元素

print(list[-2:5]) # 从倒数第二个到正数第五个元素

print(list[2:])   # 第三个元素开始的所有元素

2.6列表元素的修改。

a = [1, 2, 3, 4, 5, 6]

a[0] = 9    # 将第一个元素设为9

print(a)

a.append(7) # 在列表末尾追加7

print(a)

a[2:5] = [] # 将第三到五个元素值设置为空值

print(a)

a.pop(2)    # 将第三个元素移除

print(a)

2.7列表的遍历。

lis= ['蚂蚱','螳螂','蝈蝈','蝗虫','蛐蛐']

#(1)直接遍历

for item in lis:

    print(item)   

 #(2)按索引遍历

for i in enumerate(lis):

    print(i)

#(3)对于列表类型,还有一种通过下标遍历的方式,如使用range()函数

for i in range(len(lis)): 

    print(lis[i]) 

2.8元组的访问。

tuple = ( 'SpiderMan',2017 ,33.4, 'Homecoming', 14 )

tinytuple = (16, 'Marvel')

print (tuple)      # 输出完整元组

print (tuple[0])   # 输出元组的第一个元素

print (tuple[3:4]) # 输出从第二个元素开始到第三个元素

print (tuple + tinytuple) # 连接元组

2.9修改元组中的List类型数据项。

tuple = ([16, 'Marvel'] , 'SpiderMan',2017 ,33.4, 'Homecoming', 14,)

print(tuple[0])

tuple[0][0]='Marvel'

tuple[0][1]='16'

print (tuple) 

2.10字典的访问。

dict = {'Name': 'Mary', 'Age': 7, 'Class': 'First'};

print(dict);

print("Name: ", dict['Name'])

print("Age: ", dict['Age'])

2.11列表可以作为字典的value值。

dict = {'Name': ['Mary','Tom','Philp'], 'Age': [7,8,9], 'Class': ['1st','2nd','3rd']};

print(dict);

print("Name: ", dict['Name'])

dict['Age']=[8,9,10]

print("Age: ", dict['Age'])

2.12修改字典。

dict = {'Name': 'Zara', 'Class': 'First'};

#添加add

dict['Gender']="Female"

print(dict)

#修改update

dict.update({"No":"001"})

print(dict)

#也可以使用update方法添加/修改多个数据

dict.update({'Gender':"F","Id":1})

print(dict)

2.13删除字典元素。

del dict['Gender']

print(dict)

dict.clear()

print(dict)

2.14创建集合。

#创建一个空集合

var = set()

print(var,type(var))    #显示集合内容和类型 

#具有数据的集合

var = {'LiLei','HanMeiMei','ZhangHua', 'LiLei', 'LiLei'}

print(var,type(var))    #显示集合内容和类型

2.15集合成员检测。

#判断元素在集合内

result = 'LiLei' in var

print(result)

#判断元素不在集合内 

result = 'lilei' not in var   #大小写敏感

print(result)

2.16增加、删除集合元素。

var = {'LiLei','HanMeiMei','ZhangHua'}

var.add('LiBai')     #add方法添加元素

print(var)

var.update('DuFu')   #update方法首先拆分元素,然后各个添加

print(var)           #数据项无序,且去除重复项 

var.remove('D')

var.remove('F')

var.remove('u')

print(var)

2.17一个集合anml,其内容为{'紫貂','松貂','青鼬','狼獾’},对anml集合进行遍历。

方法一:

anml ={'紫貂','松貂','青鼬','狼獾'}

for item in anml:

       print(item)

方法二:

anml ={'紫貂','松貂','青鼬','狼獾'}

for item in enumerate(anml):

       print(item)

2.18集合的交集、并集(合集)、差集。

#分别构造獾和貂两个集合

Huan={'猪獾','蜜獾','狼獾',}

Diao={'紫貂','松貂','美洲水鼬','狼獾'}

#交集

DiaoXiong=Huan&Diao

print('貂熊是:',DiaoXiong)

#并集

Youke=Huan|Diao

print('鼬科的是:',Youke)

#差集

DiaoT=Diao-Huan

print('除去獾的貂类:',DiaoT)

2.19打开文件并写入数据。

filename = 'INFO.txt'

f=open(filename,'w')    #清空原文件数据,文件不存在则创建新文件

f.write("I am ZhangSanFeng.\n")

f.write("I am now studying in ECNU.\n")

f.close()

2.21read()函数读取整个文件。

with open("INFO.txt") as f:   # 默认模式为‘r’,只读模式

    ct10 = f.read(5)          # 5个字符

    print(ct10)

    print('======')

    contents = f.read()       # 从当前位置,读文件全部内容 

    print(contents)   

2.22使用readline()函数逐行读取。

with open('data.txt') as f:    

    line1 = f.readline()  # 读取第一行数据(此时已经指向第一行末尾)

    line2 = f.readline()  # 从上一次读取末尾开始读取(第二行)

    print(line1)

    print(line2)

    print(line1.strip())

    print(line2.strip())

    print(line1.split())

2.23使用readlines()一次读取多行:

with open('data.txt') as f:

    lines = f.readlines()  #文件数据读到一个列表,每个元素对应一行

print(lines)               #每一行数据都包含了换行符

print('================================')

for line in lines:

    print(line.rstrip())   #使用rstrip()处理空格

2.24使用for循环逐行读取文件。

#逐行读取

with open('data.txt') as f:

    for lineData in f:

        print(lineData.rstrip()) # 去掉每行末尾的换行符

2.25新建文本文件并写入内容。

filename = 'write_data.txt'

with open(filename,'w') as f:   # 'w'表示写数据,会清空原文件

    f.write("I am ZhangSanFeng.\n")

    f.write("I am now studying in ECNU.\n")

2.29读取无标题数据并设置标题名。

import pandas as pd

data1=pd.read_table('data.txt',sep=' ',header=None,names=["H","W","C"])

print(data1)

2.31使用loadtxt读取文件。

import numpy as np

# 采用字符串数组读取文件

tmp = np.loadtxt("data.txt", dtype=np.str, delimiter=" ")

print(tmp)

print("----分隔线-----------")

tmp1 = np.loadtxt("data.txt",dtype=np.str,usecols=(1,2))

print(tmp1)

2.32使用savetxt函数存数据。

import numpy as np

x = y = z = np.arange(0,50,4.5)

#X数组保留一位小数写入文件

np.savetxt('X.txt', x, delimiter=',',fmt='%5.1f')

#X数组保留三位小数写入文件

np.savetxt('formatX.txt', x, fmt='%7.3f')

#把三个数组按原格式写入文件

np.savetxt('XYZ.txt', (x,y,z))

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值