我能够创建数据框并强制一种数据类型
import pandas as pd
test = pd.DataFrame({'a':[1,2,3], 'b':[1.1,2.1,3.1]}, dtype=int)
Run Code Online (Sandbox Code Playgroud)
但我想为每列指定类型.我怎样才能做到这一点?我尝试了以下不起作用,因为生成的dtypes是对象,b列不会转换为整数.
test = pd.DataFrame({'a':[1,2,3], 'b':[1.1,2.1,3.1]}, dtype=[('a', int),('b', int)])
Run Code Online (Sandbox Code Playgroud)
杰夫帮助解决了上述问题.但是当我尝试创建一个空数据帧并且我希望能够指定列类型时,我发现了另一个问题.对于跨列的单一类型,我可以这样做
test = pd.DataFrame(columns=['a','b'], dtype=int)
Run Code Online (Sandbox Code Playgroud)
如果我想为每个'a'和'b'指定类型怎么办?
您可以传入具有dtype参数的Series
In [15]: pd.DataFrame({'a':[1,2,3], 'b':[1.1,2.1,3.1]}).dtypes
Out[15]:
a int64
b float64
dtype: object
In [16]: pd.DataFrame({'a':Series([1,2,3],dtype='int32'), 'b':Series([1.1,2.1,3.1],dtype='float32')}).dtypes
Out[16]:
a int32
b float32
dtype: object
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3138 次 |
| 最近记录: |