![](/img/trans.png)
[英]How can i loops throught all column in each row using pandas in python
[英]how i can loops thourgh column in each row using python
嘿,伙计,我有一个像这样的 dataframe
empoyees = [('jack', 34, 'Sydney',800) ,
('Riti', 31, 'Delhi',800) ,
('Aadi', 16, 'New York',800) ,
('Mohit', 32,'Delhi',1500) ,
]
empDfObj = pd.DataFrame(empoyees, columns=['Name', 'Age', 'City',Salary], index=['a', 'b', 'c', 'd'])
我如何遍历每一行中的列并使用 python 中的 pandas 获得这样的结果。 也许将所有内容添加到每一行的小列表中
a Name jack Age 34 City Sydney Salary 800
b Name Riti Age 31 City Delhi Salary 800
c Name Aadi Age 16 City New York Salary 800
d Name Mohit Age 32 City Delhi Salary 1500
您可以使用DataFrame.to_dict
并将 orient 设置为'index'
dict 的 output 将采用以下形式:
{ idx1 : {col1:val1, col2:val2 ... coln:van},
idx2 : {col1:val1, col2:val2 ... coln:valn},
...
}
如果想将它们存储为列表,则遍历 dict 并创建一个字符串列表。
[
f'{idx} {" ".join([str(v) for t in vals.items() for v in t])}'
for idx, vals in df.to_dict("index").items()
]
# output
# ['a Name jack Age 34 City Sydney Salary 800',
# 'b Name Riti Age 31 City Delhi Salary 800',
# 'c Name Aadi Age 16 City New York Salary 800',
# 'd Name Mohit Age 32 City Delhi Salary 1500']
如果您只想打印它们,则不需要构建字符串列表。 你可以这样做:
for idx, vals in df.to_dict('index').items():
print(idx, *[v for t in vals.items() for v in t], sep=" ")
#output
# a Name jack Age 34 City Sydney Salary 800
# b Name Riti Age 31 City Delhi Salary 800
# c Name Aadi Age 16 City New York Salary 800
# d Name Mohit Age 32 City Delhi Salary 1500
我保持简单
s=''
for index, row in df.iterrows():
if index in s:
pass
else:
s+=str(index)
for key, value in row[:].items():
s+=" "+ key+" "+str(value)
print(s)
s=''
output
a Name jack Age 34 City Sydney Salary 800
b Name Riti Age 31 City Delhi Salary 800
c Name Aadi Age 16 City New York Salary 800
d Name Mohit Age 32 City Delhi Salary 1500
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.