我遇到了一些問題,我不知道如何在pandas資料框架上進行迭代,以便將特定列中的值分配給一個字典中的值。
我使用 pandas 讀取 csv 檔案來獲得下面的 df:
badge_id case_id case_type description short_des
0 123 1690 type0 subtype4 xxx
1 456 1717 type0 subtype2 yyy
2 789 1389 type0 subtype2 aaa
3 231 1540 type3 subtype1 bbb
我想遍歷df,將badge_id、case_id和short_desc這三列的值分配給以下字串。
"{'open_for': { 值。**df[badge_id]**}, 'short_description': { value : **df['short_desc]**}, 'case_id': { value : **df[case_id]**}}"
我試著將每一列中的資料附加到一個空串列中,將其分配給一個變數。然后我使用for回圈來迭代行和串列變數,但我似乎無法將所有三列的資料放入它們自己指定的字串中。
鑒于上述df,理想的輸出是4個字串(或更多,取決于df中的資料行數):
"{'open_for': { 值。**'123'**},'short_description': {值 : **'xxx'**}, 'case_id': {值:**1690**}}"
"{'open_for': {值。**'456'**},'short_description': {值 : **'yyy'**}, 'case_id': {值 : **'1717'**}}"
"{'open_for': {值。**'789'**},'short_description': { value : **'aaa'**}, 'case_id': {值 : **'1389'**}}"
"{'open_for': {值。**'231'**},'short_description': {值 : **'bbb'**}, 'case_id': {值 : **'1540'**}}"
uj5u.com熱心網友回復:
你可以使用list-comprehension df.iterrows():
out = [
{
"open_for"/span>: {"value"/span>: row["badge_id"/span>]},
"short_description": {"value": row["short_des"]},
"case_id": {"value": row["case_id"]},
}
for _, row in df.iterrows()
]
print(out)
列印:
[
{
"open_for"/span>: {"value"/span>: 123}。
"short_description": {"value": "xxx"}。
"case_id": {"value": 1690}。
},
{
"open_for": {"value": 456}。
"short_description": {"value": "yyy"}。
"case_id": {"value": 1717}。
},
{
"open_for": {"value": 789}。
"short_description": {"value": "aaa"}。
"case_id": {"value": 1389}。
},
{
"open_for": {"value": 231}。
"short_description": {"value": "bbb"}。
"case_id": {"value": 1540}。
},
]
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/309965.html
標籤:
上一篇:功能不可用:由于我們正在更新該應用的其他細節,因此該應用的Facebook登錄目前不可用。請再次嘗試
下一篇:在R中按組進行空間點距離分析
