Necesito convertir mi lista en un marco de datos de pandas de una columna
Lista actual (len = 3):
['Thanks You',
'Its fine no problem',
'Are you sure']
Pandas DF requerido (forma = 3,):
0 Thank You
1 Its fine no problem
2 Are you sure
Tenga en cuenta que los números representan el índice en Required Pandas DF arriba.
Respuestas:
Utilizar:
L = ['Thanks You', 'Its fine no problem', 'Are you sure'] #create new df df = pd.DataFrame({'col':L}) print (df) col 0 Thanks You 1 Its fine no problem 2 Are you sure
df = pd.DataFrame({'oldcol':[1,2,3]}) #add column to existing df df['col'] = L print (df) oldcol col 0 1 Thanks You 1 2 Its fine no problem 2 3 Are you sure
Gracias DYZ :
#default column name 0 df = pd.DataFrame(L) print (df) 0 0 Thanks You 1 Its fine no problem 2 Are you sure
fuente
df = pd.DataFrame(L)
L = stringdata.split(';')
?AttributeError: 'list' object has no attribute 'split'
list
como variable, comolist=[1,2,3]
, necesitalist1
oL
, luego reinicia IDE y todo funciona bien.si su lista se ve así: [1,2,3] puede hacer:
lst = [1,2,3] df = pd.DataFrame([lst]) df.columns =['col1','col2','col3'] df
para conseguir esto:
col1 col2 col3 0 1 2 3
alternativamente, puede crear una columna de la siguiente manera:
import numpy as np df = pd.DataFrame(np.array([lst]).T) df.columns =['col1'] df
para conseguir esto:
col1 0 1 1 2 2 3
fuente
Puede llamar directamente al
y pase su lista como parámetro.
l = ['Thanks You','Its fine no problem','Are you sure'] pd.DataFrame(l)
Salida:
0 0 Thanks You 1 Its fine no problem 2 Are you sure
Y si tiene varias listas y desea hacer un marco de datos a partir de ellas, puede hacerlo de la siguiente manera:
import pandas as pd names =["A","B","C","D"] salary =[50000,90000,41000,62000] age = [24,24,23,25] data = pd.DataFrame([names,salary,age]) #Each list would be added as a row data = data.transpose() #To Transpose and make each rows as columns data.columns=['Names','Salary','Age'] #Rename the columns data.head()
Salida:
Names Salary Age 0 A 50000 24 1 B 90000 24 2 C 41000 23 3 D 62000 25
fuente
pd.DataFrame(zip(names,salary,age))
, ¿verdad?Ejemplo:
['Thanks You', 'Its fine no problem', 'Are you sure']
bloque de código:
import pandas as pd df = pd.DataFrame(lst)
Salida:
0 0 Thanks You 1 Its fine no problem 2 Are you sure
No se recomienda eliminar los nombres de las columnas del marco de datos panda. pero si aún desea su marco de datos sin encabezado (según el formato que publicó en la pregunta) puede hacer esto:
df = pd.DataFrame(lst) df.columns = ['']
La salida será así:
0 Thanks You 1 Its fine no problem 2 Are you sure
o
df = pd.DataFrame(lst).to_string(header=False)
Pero la salida será una lista en lugar de un marco de datos:
0 Thanks You 1 Its fine no problem 2 Are you sure
¡¡Espero que esto ayude!!
fuente
Para convertir una lista en el marco de datos principal de Pandas, necesitamos usar el método DataFrame del paquete pandas .
Hay diferentes formas de realizar la operación anterior.
importar pandas como pd
Datos = pd.DataFrame (Column_Data)
Data.columns = ['Column_Name']
Entonces, para el problema mencionado anteriormente, el fragmento de código es
import pandas as pd Content = ['Thanks You', 'Its fine no problem', 'Are you sure'] Data = pd.DataFrame({'Text': Content})
fuente