gpt4 book ai didi

python - 如何将单个 pandas.DataFrame 行拆分为多个由空格分隔的列? Python

转载 作者:太空宇宙 更新时间:2023-11-04 05:10:18 24 4
gpt4 key购买 nike

我正在处理 NCEI 海洋数据,这些数据是没有标题的 .dat 文件,使用 python(https://www.ncei.noaa.gov/data/marine/icoads3.0/ 用于文件)它们看起来像:

166210151200 4962 35378 1306    101134     NL 1585 26                                                        165 17796730133 5 0                   2FF11FF11AAAAAAAAAAAA     98150000003002199 0 NAN     NATIONAAL ARCHIEF OF THE NETHERLANDS              DEN HAAG  NEDERLAND     1.11.01.01     1229             AANW                                   112                            AAN_1229_112                  DUTCH                         0493800N 102600E493700N         2 1TENERIFE                                                                                                                                                                                                                                                           0 21662101512         3         VM    8UNKNOWN        MAARSEVEEN                    DUTCH                  VOC                               M. GERRITSZ. BOOS             OPPERSTUURMAN                                                                                                                          ROTTERDAM                                    BATAVIA                                           0                                                  0977.216621015WZW                    7.00                                                                                                        UNKNOWN        UNKNOWN                                       UNKNOWN360 DEGREES                                                                                                                                                                                                 ZZO                                                                                                                                                                            MOU (?) KOELTE                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      00000000CLIWOC VERSION 1.0
166210161300 4907 35215 1306 101134 NL 1585 26 165 17797730133 5 0 2FF11FF11AAAAAAAAAAAA 98150000013002199 0 NAN NATIONAAL ARCHIEF OF THE NETHERLANDS DEN HAAG NEDERLAND 1.11.01.01 1229 AANW 112 AAN_1229_112 DUTCH 0490400N 84800E 1 1TENERIFE 0 21662101612 3 VM 8UNKNOWN MAARSEVEEN DUTCH VOC M. GERRITSZ. BOOS OPPERSTUURMAN ROTTERDAM BATAVIA 0 0977.216621015ZW 1/2 N 18.00 UNKNOWN UNKNOWN UNKNOWN360 DEGREES ZZO MOU KOELTE 00000000CLIWOC VERSION 1.0
166210171300 4812 35000 1306 101134 NL 1695 26 165 17680730133 5 0 2FF11FF11AAAAAAAAAAAA 98150000023002199 0 NAN NATIONAAL ARCHIEF OF THE NETHERLANDS DEN HAAG NEDERLAND 1.11.01.01 1229 AANW 112 AAN_1229_112 DUTCH 0483000N 63900E480700N 2 1TENERIFE 0 21662101712 3 VM 8UNKNOWN MAARSEVEEN DUTCH VOC M. GERRITSZ. BOOS OPPERSTUURMAN ROTTERDAM BATAVIA 0 0977.216621015ZWTW 15.00 UNKNOWN UNKNOWN UNKNOWN360 DEGREES ZTO MOU KOELTE MOOI WEER 00000000CLIWOC VERSION 1.0
166210181300 4758 34925 1306 101134 NL 1695 26 165 17670730133 5 0 2FF11FF11AAAAAAAAAAAA 98150000033002199 0 NAN NATIONAAL ARCHIEF OF THE NETHERLANDS DEN HAAG NEDERLAND 1.11.01.01 1229 AANW 112 AAN_1229_112 DUTCH 0474100N 55400E473500N 2 1TENERIFE 0 21662101812 3 VM 8UNKNOWN MAARSEVEEN DUTCH VOC M. GERRITSZ. BOOS OPPERSTUURMAN ROTTERDAM BATAVIA 0 0977.216621015ZWTW 11.00 UNKNOWN UNKNOWN UNKNOWN360 DEGREES ZTO MOU KOELTE 'ENN MOUT'? REGEN 01000000CLIWOC VERSION 1.0
166210191300 4757 34795 1306 101134 NL 1805 67 165 17672730133 5 0 2FF11FF11AAAAAAAAAAAA 98150000043002199 0 NAN NATIONAAL ARCHIEF OF THE NETHERLANDS DEN HAAG NEDERLAND 1.11.01.01 1229 AANW 112 AAN_1229_112 DUTCH 0473400N 43600E 1 1TENERIFE 0 21662101912 3 VM 8UNKNOWN MAARSEVEEN DUTCH VOC M. GERRITSZ. BOOS OPPERSTUURMAN ROTTERDAM BATAVIA 0 0977.216621015W/Z 14.00 UNKNOWN UNKNOWN UNKNOWN360 DEGREES Z MARSZEILSKOELTE, TOUPKOULTE REGEN 01000000CLIWOC VERSION 1.0

这些是我一直使用的制表符分隔文件

data = pd.read_table('file.dat', header=None)

它将数据导入为 x 行,其中包含所有数据的单个列。在单列中,每个数据由空格分隔。

有没有一种方法可以将这些数据导入列或读取数据变量并根据空白将每一行拆分为列。我认为这就是我对 read.table 函数所做的。完整的数据集很大,所以我更喜欢一种方法来导入它们,而不是之后必须处理它们。

最佳答案

我想你需要的是Fixed Width Formatted :

代码:

df = pd.read_fwf('IMMA.dat', header=None)
print(df.dtypes)

结果:

[17 rows x 66 columns]
0 int64
1 int64
2 int64
3 int64
...
61 object
62 object
63 object
64 object
65 float64
dtype: object

关于python - 如何将单个 pandas.DataFrame 行拆分为多个由空格分隔的列? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43161551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com