Как из numpy array создать dataframe без потери типов данных?

Пользователь

от jedidiah.brown , в категории: Python , 2 месяца назад

Как из numpy array создать dataframe без потери типов данных?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от francis_schuster , 2 месяца назад

@jedidiah.brown 

Для создания pandas DataFrame из numpy array без потери типов данных, вы можете использовать конструктор DataFrame, указав параметр data как numpy array и задав аргумент dtype для каждого столбца, чтобы сохранить типы данных.


Вот пример создания DataFrame из numpy array с сохранением типов данных:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import numpy as np
import pandas as pd

# Создаем numpy array
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=np.int32)

# Создаем DataFrame из numpy array, задав dtype для каждого столбца
df = pd.DataFrame(data=arr, columns=['A', 'B', 'C'], dtype=np.int32)

# Выводим DataFrame
print(df.info())
print(df)


Это приведет к следующему выводу:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       3 non-null      int32
 1   B       3 non-null      int32
 2   C       3 non-null      int32
dtypes: int32(3)
memory usage: 164.0 bytes
None
   A  B  C
0  1  2  3
1  4  5  6
2  7  8  9


В результате мы создаем DataFrame с сохранением типа данных int32 для каждого столбца. Вывод df.info() показывает, что все столбцы имеют тип данных int32.