1 数据类型判断

type(data_test)

2 list 和DataFrame和Series的相互转换

list 转化DataFrame

a = [[‘a’, ‘1.2’, ‘4.2’], [‘b’, ‘70’, ‘0.03’], [‘x’, ‘5’, ‘0’]]
df = pd.DataFrame(a, columns=[‘one’, ‘two’, ‘three’])
应用:addr_verctor_df = pd.DataFrame(list名称)
———————————————————————————————————————————————-
实例:addr, pred_psm为两个list的合并
addr, pred_psm = pd.DataFrame(addr, columns=[‘addr’]),pd.DataFrame(pred_psm, columns=[‘psm’])
data_one = pd.concat([addr, pred_psm],axis=1)
psm_produce_all = pd.DataFrame()
data_all = pd.concat([psm_produce_all,data_one])

DataFrame 转list

df1 = df.values.tolist() #先转array,再到list
pandas.core.series.Series可以直接转成list
image.png

list转Series

image.png

Series转list

image.png

3 DataFrame 和np.array的相互转换

DataFrame 转np.array

df=df.values

array转化成dataframe

import pandas as pd
df = pd.DataFrame(df)

4 array和list的相互转换

array转成list

print(x.tolist()) #x由array转成list
print(list(x)) #x由array转成list

list转为array要用numpy模块中的array()函数

import numpy as np
print(np.array(x)) #list转化为array,数据类型会全部统一

5 tensor与array的相互转换

5.1 pytorch中

Pytorch tensor 转为array

a.numpy()
np.array(a) #也可以转numpy数组

array转为 pytorch的tensor

torch.from_numpy(b)
torch.Tensor(b) #也可以转pytorch Tensor

5.2 tensorflow

numpy 实例转 tensor

tf.convert_to_tensor([1,2.3])

Tensor 转 numpy

np.array(D)

6 列表和字典的相互转换

6.1 列表转换成字典

方法一:使用zip()函数

  1. a = ['a1','a2','a3','a4','a1']
  2. b = ['b1','b2','b3','dd','cd']
  3. d = zip(a,b)
  4. print(dict(d))
  5. #{'a1': 'cd', 'a2': 'b2', 'a3': 'b3', 'a4': 'dd'} #注意关键字相同时,会合并掉。

方法二:使用嵌套列表转换为字典

  1. a = ['a1','a2']
  2. b = ['b1','b2']
  3. c = [a,b]
  4. print(dict(c)) # {'a1': 'a2', 'b1': 'b2'}
  5. # 相当于遍历子列表,如下
  6. dit = {}
  7. for i in c:
  8. dit[i[0]] = i[1]
  9. print(dit)

6.2 字典转换成列表

  1. dit = {'name':'zxf',
  2. 'age':'22',
  3. 'gender':'male',
  4. 'address':'shanghai'}
  5. # 将字典的key转换成列表
  6. lst = list(dit)
  7. print(lst) # ['name', 'age', 'gender', 'address']
  8. # 将字典的value转换成列表
  9. lst2 = list(dit.values())
  10. print(lst2) # ['zxf', '22', 'male', 'shanghai']

7 python字符串与变量的转换

7.1 由字符串生成变量

当需要通过字符串生成变量时后,就需要用到了,不过需要赋值。
image.png

7.2 变量生成字符串

当需要对变量名称进行判断,就需要这种功能:

  1. abc = 376
  2. variable_name = list(dict(abc=abc).keys())[0]
  3. print(variable_name,type(variable_name),abc)
  4. #输出:abc <class 'str'> 376

来自:https://www.zhihu.com/question/42768955的一个回复。

8 Series与DataFrame

8.1 Series转换为DataFrame
虽然Series有一个to_frame()方法,但是当Series的index也需要转变为DataFrame的一列时,这个方法转换会有一点问题。
所以,下面我采用将Series对象转换为list对象,然后将list对象转换为DataFrame对象。
image.png

Pytorch中Tensor数据类型转换

1)Tensor的int、float数据类型转换:
在Tensor后加 .long(), .int(), .float(), .double()等即可
2)Tensor与numpy数据类型转换:
Tensor -> Numpy 使用 data.numpy(),data为Tensor变量
Numpy -> Tensor 使用 torch.from_numpy(data),data为numpy变量
3)Tensor与Python数据类型转换:
Tensor -> 单个Python数据,使用data.item(),data为Tensor变量且只能为包含单个数据
Tensor -> Python list,使用data.tolist(),data为Tensor变量,返回shape相同的可嵌套的list