1 查看pandas的版本
解决办法
import numpy as np
import pandas as pd
print(pd.__version__)
结果如下
0.24.1
2 如何通过list,numpy array, dict创建series
现有list, numpy array, dict如下:
import numpy as np
import pandas as pd
mylist = list('abc')
myarr = np.arange(3)
mydict = dict(zip(mylist, myarr))
print("list: {}\nmyarr: {}\nmydict: {}\n".format(mylist, myarr, mydict))
输出如下:
list: ['a', 'b', 'c']
array: [0 1 2]
dict: {'a': 0, 'b': 1, 'c': 2}
请把他们变成Series
解决办法:
ser1 = pd.Series(mylist)
ser2 = pd.Series(myarr)
ser3 = pd.Series(mydict)
结果如下:
image.png
3 把一个Series转换为DataFrame
现有Series如下:
import numpy as np
import pandas as pd
mylist = list('abc')
myarr = np.arange(3)
mydict = dict(zip(mylist, myarr))
ser3 = pd.Series(mydict)
print(ser3)
输出
a 0
b 1
c 2
dtype: int64
请把Series转换为DataFrame
df = ser3.to_frame()
df
输出如下:
df
如果想把Series中的index也一起进行转换,可以使用如下操作
df = ser3.to_frame().reset_index()
df
输出如下:
image.png
合并两个Series组成一个DataFrame
已有两个Series, ser1与ser2
import numpy as np
ser1 = pd.Series(list('abcedfghijklmnopqrstuvwxyz'))
ser2 = pd.Series(np.arange(26))
请把它们合并成一个DataFrame
解决方法如下:
df = pd.concat([ser1, ser2], axis=1)
#df = pd.DataFrame({'col1': ser1, 'col2': ser2})
#这也是一种可行的办法
df.head()
结果如下
df
5 给Series定义一个名字
已有Series: ser,我们想给它定义一个名字
ser = pd.Series(list('abcedfghijklmnopqrstuvwxyz'))
解决方式如下:
ser.name = 'alpha'
ser.head()
输入如下:
ser
网友评论