如何使用 Python 上的 itertuples() 从数据框中获取一行中每个单元格的内容? Pandas 相关
How to get the content of every cell in a row from a dataframe using itertuples() on Python? Pandas related
假设我有以下 df
:
0 0 1 1 2 2 3 3 4 4 5 5
0 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas None
1 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Arena
2 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Marron
3 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Purpura
4 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Verde
我知道我可以通过这种方式合并 .itertuples(index=False)
和 .iloc[[0]]
以打印该行中每个单元格的内容:
for i in df.iloc[[0]].itertuples(index=False):
print(i)
输出:
Pandas(_0='Fondo', _1='Oceano', _2='Cuerpo', _3='Cuerpo cangrejo', _4='Ojos', _5='Antenas', _6='Color', _7='Amarillo', _8='Pinzas', _9='None', _10='Puas', _11='None')
但我不知道如何改进上面的句子以获得特定行的以下输出(即 0
):
期望的输出:
Fondo
Oceano
Cuerpo
Cuerpo cangrejo
Ojos
Antenas
Color
Amarillo
Pinzas
None
Puas
None
有什么想法吗?
通过使用双方括号进行切片,您将获得一个 (2D) DataFrame。
您似乎在尝试在 1D 中循环。你应该使用 Series.iteritems
:
for _, e in df.iloc[0].iteritems():
print(e)
输出:
Fondo
Oceano
Cuerpo
Cuerpo
cangrejo
...
假设我有以下 df
:
0 0 1 1 2 2 3 3 4 4 5 5
0 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas None
1 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Arena
2 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Marron
3 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Purpura
4 Fondo Oceano Cuerpo Cuerpo cangrejo Ojos Antenas Color Amarillo Pinzas None Puas Verde
我知道我可以通过这种方式合并 .itertuples(index=False)
和 .iloc[[0]]
以打印该行中每个单元格的内容:
for i in df.iloc[[0]].itertuples(index=False):
print(i)
输出:
Pandas(_0='Fondo', _1='Oceano', _2='Cuerpo', _3='Cuerpo cangrejo', _4='Ojos', _5='Antenas', _6='Color', _7='Amarillo', _8='Pinzas', _9='None', _10='Puas', _11='None')
但我不知道如何改进上面的句子以获得特定行的以下输出(即 0
):
期望的输出:
Fondo
Oceano
Cuerpo
Cuerpo cangrejo
Ojos
Antenas
Color
Amarillo
Pinzas
None
Puas
None
有什么想法吗?
通过使用双方括号进行切片,您将获得一个 (2D) DataFrame。
您似乎在尝试在 1D 中循环。你应该使用 Series.iteritems
:
for _, e in df.iloc[0].iteritems():
print(e)
输出:
Fondo
Oceano
Cuerpo
Cuerpo
cangrejo
...