• Jobs
  • About Us
  • Jobs
    • Home
    • Jobs
    • Courses and challenges
  • Businesses
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

370
Views
¿Buena alternativa al método Pandas .append(), ahora que está en desuso?

Uso mucho el siguiente método para agregar una sola fila a un marco de datos. Una cosa que realmente me gusta es que te permite agregar un objeto de dictado simple. Por ejemplo:

 # Creating an empty dataframe df = pd.DataFrame(columns=['a', 'b']) # Appending a row df = df.append({ 'a': 1, 'b': 2 }, ignore_index=True)

Nuevamente, lo que más me gusta de esto es que el código es muy limpio y requiere muy pocas líneas. Ahora supongo que la alternativa recomendada es:

 # Create the new row as its own dataframe df_new_row = pd.DataFrame({ 'a': [1], 'b': [2] }) df = pd.concat([df, df_new_row])

Entonces, lo que antes era una línea de código ahora son dos líneas con una variable descartable y un cruft adicional donde creo el nuevo marco de datos. :( ¿Hay una buena manera de hacer esto que solo use un dict como el que tengo en el pasado (que no está en desuso)?

over 3 years ago · Santiago Trujillo
2 answers
Answer question

0

Cree una lista con sus diccionarios, si son necesarios, y luego cree un nuevo marco de datos con df = pd.DataFrame.from_records(your_list) . El método "agregar" de List es muy eficiente y nunca quedará obsoleto. Los marcos de datos, por otro lado, con frecuencia tienen que ser recreados y todos los datos copiados en anexos, debido a su diseño, es por eso que desaprobaron el método.

over 3 years ago · Santiago Trujillo Report

0

También me gusta el método append. Pero puedes hacerlo en una línea con una lista de dictados

 df = pd.concat([df, pd.DataFrame.from_records([{ 'a': 1, 'b': 2 }])])

o usando loc y tuplas para valores en DataFrames con índices ascendentes incrementales

 df.loc[len(df), ['a','b']] = 1, 2

o tal vez

 df.loc[len(df), df.columns] = 3, 4
over 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Show me some job opportunities
There's an error!