pandas 面试题挑战一

作者: 人工智能人话翻译官 | 来源:发表于2019-05-18 21:15 被阅读284次

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

相关文章

  • pandas 面试题挑战一

    1 查看pandas的版本 解决办法 结果如下 2 如何通过list,numpy array, dict创建ser...

  • pandas 面试题挑战五

    计算两个Series之间的均方误差 现有两个Series如下: 计算两个Series之间的均方误差解决办法: 输出...

  • pandas 面试题挑战四

    13 如何把一个 numpy array 转换成规定形状的 dataframe 现有Series如下 要求转化为7...

  • pandas 面试题挑战六

    从Series的字符串中过滤出email地址 现有Series如下: 解决办法: 结果如下: 重点解读:这题的重点...

  • pandas 面试题挑战九

    按要求导入csv数据,每隔50行数据取一条合并成新的df 输出 重点解读:pd.read_csv中最重要的是chu...

  • pandas 面试题挑战十

    查询df中指定行与列的数据 现有数据如下: 查询最贵的价格,解决方式如下: 输出 查询最贵价格的车,相关的'Man...

  • pandas 面试题挑战二

    6 取出Series 1中独有的数据 现有两个Series, ser1和ser2 如下: 取出在ser1中出现,但...

  • pandas 面试题挑战七

    按照指定要求前向填充元素(ffill forward fill) 构建数据如下: 输出 分别使用前一行/前一列数据...

  • pandas 面试题挑战八

    求两个Series的相关性 现有两个Series如下: 求两个Series的皮尔逊系数 解决方法就是把Series...

  • pandas 面试题挑战十二

    DataFrame中的apply方法,applymap方法有什么区别 DataFrame中的apply方法 输出 ...

网友评论

    本文标题:pandas 面试题挑战一

    本文链接:https://www.haomeiwen.com/subject/rvkxzqtx.html