[英]How to create single variable in Python with two columns either as tuple or Pandas dataframe?
[英]Python how to call either of the two columns of a dataframe
我有很多列的大數據框。 我想隨時訪問這兩列中的任何一個。
df.columns = ['c1','c1T1','c2','c2T1',...........,'c10','c10T1',
'c30','c30T2','c40','c40T2',...........,'c60','c60T2']
我知道列名是'c1',...,'c4'
。 還有與這些相關聯的另一列。 我調用第二列的邏輯是'c1'+['T1' or 'T2']
。 我知道只有一列'c1T1'
,而不是'c1T2'
。 那么,如何在df[]
搜索這樣的組合。
我現在的代碼:
df[['c1','c1'+'T1'|.'T2']]
我現在的輸出:
SyntaxError: invalid syntax
如何調用與第一列關聯的第二列?
您可以使用列表自動創建您想要的列名稱,然后使用該列表查找您需要的列。 代碼如下。
您可以更改列表prefixes
和postfixes
以獲得所需的列。
prefixes = ['c1']
postfixes = ['', 'T1','T2']
colsToCheck = [prefix+postfix for prefix in prefixes for postfix in postfixes]
cols = [col for col in colsToCheck if col in df.columns]
df[cols]
由於“。”,以下給出了語法錯誤 ['c1','c1'+'T1'|.'T2'] 但即使沒有,你也不能使用 | 與字符串。 我解決這個問題的方法是生成您可能想要檢查的列名列表(在本例中為 ['c1','c1T1','c1T2'])並使用列表理解來獲取元素在 df.columns 中。
cols_to_check = ['c1','c1T1','c1T2']
select_cols = [col for col in cols_to_check if col in df.columns]
df[select_cols]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.