小编Vai*_*ain的帖子

为什么需要将地图转换为列表以将其分配给pandas系列?

我刚开始学习大熊猫的基础知识,有一件事让我思考.

import pandas as pd
data = pd.DataFrame({'Column1': ['A', 'B', 'C']})
data['Column2'] = map(str.lower, data['Column1'])
print(data)
Run Code Online (Sandbox Code Playgroud)

该程序的输出是:

   Column1                             Column2
 0       A  <map object at 0x00000205D80BCF98>
 1       B  <map object at 0x00000205D80BCF98>
 2       C  <map object at 0x00000205D80BCF98>
Run Code Online (Sandbox Code Playgroud)

获得所需输出的一种可能解决方案是将地图对象类型转换为列表.

import pandas as pd
data = pd.DataFrame({'Column1': ['A', 'B', 'C']})
data['Column2'] = list(map(str.lower, data['Column1']))
print(data)
Run Code Online (Sandbox Code Playgroud)

输出:

   Column1 Column2
 0       A       a
 1       B       b
 2       C       c
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用range(),它也在Python 3中返回自己的类型,则无需将对象类型转换为列表.

import pandas as pd
data = pd.DataFrame({'Column1': ['A', 'B', 'C']})
data['Column2'] = range(3) …
Run Code Online (Sandbox Code Playgroud)

python python-3.x pandas

10
推荐指数
1
解决办法
163
查看次数

标签 统计

pandas ×1

python ×1

python-3.x ×1