簡體   English   中英

Pandas dataframe 使用基於上述行的值創建新列

[英]Pandas dataframe create new columns with values based on above row

目前,我有一個像這樣的 dataframe :

指數 領域 類型 上游的 下游 旗幟
1 搜索引擎 1 0
2 英國廣播公司的新聞 公共廣播公司 1 1 中心
3 英國廣播公司的新聞 公共廣播公司 1 1 中心
4 facebook 社交媒體 1 0
5 福克斯新聞 商業廣播公司 1 1 中心

我想像這樣獲得 dataframe:

指數 領域 類型 上層 下降 旗幟 參考fb 參考soc_med ref_bing refer_search_eng
1 搜索引擎 1 0
2 英國廣播公司的新聞 公共廣播公司 1 1 中心 0 0 1 1
3 英國廣播公司的新聞 公共廣播公司 1 1 中心 0 0 1 1
4 facebook 社交媒體 1 0
5 福克斯新聞 商業廣播公司 1 1 中心 1 1 0 0

我的腳本需要做的是:

創建新列,當上一行滿足upstream = 1,downstream = 0的條件時,根據上一行對每個新聞項(始終標記為中心)進行分類。新聞有6類(例如,comm broadcaster,public broadcaster)只是例子)。 我想要新列中的二進制值,例如上面的示例。

重要的是,如果“新聞”類型之后的后續行也是“中心”標志顯示的“新聞”,那么這也應該與前一個新聞行的分類相同。

我從您的問題中了解到的是,您想根據先前列的值創建新列。

df["new_column_nam"] = df[(df[upst] == 1) & (df[downst] == 0)]

In place of new_column_name, you could use the column names that you want to create.

暫無
暫無

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

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