我想将表格(表示为列表列表)转换为Pandas DataFrame.作为一个极其简化的例子:
a = [['a', '1.2', '4.2'], ['b', '70', '0.03'], ['x', '5', '0']]
df = pd.DataFrame(a)
Run Code Online (Sandbox Code Playgroud)
将列转换为适当类型的最佳方法是什么,在这种情况下,将第2列和第3列转换为浮点数?有没有办法在转换为DataFrame时指定类型?或者最好先创建DataFrame,然后循环遍历列以更改每列的类型?理想情况下,我想以动态方式执行此操作,因为可能有数百列,我不想确切地指定哪些列属于哪种类型.我可以保证的是,每列包含相同类型的值.
我有这个 df:
A
0 2017-04-17 00:00:00
1 2017-04-18 00:00:00
2 2017-04-19 00:00:00
3 2017-04-20 00:00:00
4 2017-04-21 00:00:00
Run Code Online (Sandbox Code Playgroud)
我试图摆脱 H、M、S,这样我就剩下:
A
0 2017-04-17
1 2017-04-18
2 2017-04-19
3 2017-04-20
4 2017-04-21
Run Code Online (Sandbox Code Playgroud)
A列的数据类型是对象。我试过了:
df['A'] = df['A']datetime.strftime('%Y-%m-%d')
Run Code Online (Sandbox Code Playgroud)
和:
import datetime as datetime
Run Code Online (Sandbox Code Playgroud)
我得到:
AttributeError: 'Series' object has no attribute 'strftime'
Run Code Online (Sandbox Code Playgroud)