Print pandas rows cells as string
Question:
I’m trying to print a data frame where each cell appears as a string:
Dataset
a b c
0 car new york queens
1 bus california los angeles
2 aircraft illinois chicago
3 rocket texas houston
4 subway maine augusta
5 train florida miami
Mon script:
for index, row in df.iterrows():
print(df["a"], "n", testes["c"], "n", testes["b"])
My output:
0 car
1 bus
2 aircraft
3 rocket
4 subway
5 train
Name: a, dtype: object
…
Good output:
car
queens
new york
bus
los angeles
california
...
Answers:
Looping is slow, but possible if use row
Series
:
for index, row in df.iterrows():
print(row["a"], row["c"], row["b"], sep="n")
Another idea is convert columns to numpy array:
for a, b, c in df[['a','b','c']].to_numpy():
print(a, c, b, sep="n")
Or zip
:
for a, b, c in zip(df['a'],df['b'],df['c']):
print(a, c, b, sep="n")
One way to achieve that is using apply:
df.apply(lambda row: print(f"{row['a']}n{row['c']}n{row['b']}n"), axis = 1)
I’m trying to print a data frame where each cell appears as a string:
Dataset
a b c
0 car new york queens
1 bus california los angeles
2 aircraft illinois chicago
3 rocket texas houston
4 subway maine augusta
5 train florida miami
Mon script:
for index, row in df.iterrows():
print(df["a"], "n", testes["c"], "n", testes["b"])
My output:
0 car
1 bus
2 aircraft
3 rocket
4 subway
5 train
Name: a, dtype: object
…
Good output:
car
queens
new york
bus
los angeles
california
...
Looping is slow, but possible if use row
Series
:
for index, row in df.iterrows():
print(row["a"], row["c"], row["b"], sep="n")
Another idea is convert columns to numpy array:
for a, b, c in df[['a','b','c']].to_numpy():
print(a, c, b, sep="n")
Or zip
:
for a, b, c in zip(df['a'],df['b'],df['c']):
print(a, c, b, sep="n")
One way to achieve that is using apply:
df.apply(lambda row: print(f"{row['a']}n{row['c']}n{row['b']}n"), axis = 1)