簡體   English   中英

如何根據第一列的條件在 pandas 中添加新行?

[英]How to add a new row in pandas based on a condition from the first column?

我有以下 pandas dataframe:示例輸入數據

我想只遍歷第一列中的行,如果它滿足一個條件(即包含字符串'hello'),我想在上面添加一個空行,只填充第一列。

示例output

我試過: df.loc[0] ='My new title'

這會添加一行,但標題位於每一列。

我猜語法會是這樣的:`

for i in df.iloc[0]:
    if i == 'hello':
    df.loc[-1] ='My new title'
print(df)

` 這也不起作用 - 有人能指出我正確的方向嗎? 謝謝

您可以通過這種方式添加新行

import pandas

data = [['tom', 10], ['nick', 15], ['juli', 14]] 
df = pandas.DataFrame(data, columns = ['Name', 'Age']) 

df2 = pandas.DataFrame([['My new title', None]], columns = ['Name', 'Age'])
rownumber = 0
for i in df.iloc[0:,0]:

    if i == "nick":
        df = pandas.concat([df.iloc[:rownumber], df2, df.iloc[rownumber:]]).reset_index(drop=True)
        rownumber += 1

    rownumber += 1

這將在每個“昵稱”之前添加一個新行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM