如何获取Pandas中每个值的数据类型

2024-09-30 08:20:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下值的数据帧df:

0                                    abcc
1                                      11
2                                    TRUE
3                                 "123.5"
4                            192.168.1.55
5                   "123.4555, 123.53422"
6                              12/23/1999
7                                      AF
8                        9° 3' 33.228'' N
9                      9° 47' 20.6268'' W
10  "8° 3' 33.228'' N,8° 47' 20.6268'' W"
11                             1582088645

我转换了数据帧并检查了轴序列号的数据类型:

data=data.transpose()
    for i, j in data.dtypes.iteritems():
        print(i,j)
 0 object
 1 object
 .
 .
 .
 11 object

如何跳过此序列号。所以我可以得到每个值的数据类型? 我想要这样的东西

abcc object
10 int64
TRUE bool
“123.5” object
192.168.1.54 object
“123.4555, 123.53422” object
12/23/1998 object
AF object
8° 3' 33.228'' N object
8° 47' 20.6268'' W object
“8° 3' 33.228'' N,8° 47' 20.6268'' W” object
1582088644 int64

Tags: 数据intruedffordataobject序列号
1条回答
网友
1楼 · 发布于 2024-09-30 08:20:16

这有点不传统,但能给你想要的:

df =pd.DataFrame(data=["abcc", 11, "TRUE", "123.5", "192.168.1.55", "123.4555, 123.53422",
                       "12/23/1999","AF","9° 3' 33.228'' N", "9° 47' 20.6268'' W", 
                       "8° 3' 33.228'' N,8° 47' 20.6268'' W", 1582088645])
for col, dtype in zip(df.T.values[0],df.T.dtypes):
    print(col, dtype)

输出为:

abcc object
11 object
TRUE object
123.5 object
192.168.1.55 object
123.4555, 123.53422 object
12/23/1999 object
AF object
9° 3' 33.228'' N object
9° 47' 20.6268'' W object
8° 3' 33.228'' N,8° 47' 20.6268'' W object
1582088645 object

您必须小心,因为这只适用于您提供的数据

相关问题 更多 >

    热门问题