簡體   English   中英

從Python數據框中的SQL連接刪除括號

[英]Removing brackets from SQL connexion in Python dataframe

我是新來的

我的Python筆記本中有一個SQL查詢表,它提供以下數據框:

在此處輸入圖片說明

我的最終目標是對第二列(即布爾值)進行分組,並獲得第一列每組的平均值(范圍為1到10)

問題是我無法有效地移除括號,因此無法從第一列計算任何內容。 到目前為止,我已經嘗試過了:

val = df.values
val

其次是:

list = [i[0] for i in val]
z = map(ast.literal_eval,list)
zz= list(z)
zz

我想使用一個有效的值,例如:列中的值:[367,368,370](這是多選問題的選擇,為您提供了一些上下文),但是在這種情況下,它不起作用。 也許因為旁邊的布爾值嗎? 我真的不知道

編輯:SQL查詢:

pd.read_sql
('
SELECT U.iUserSexeType, CA.jAnswer 
FROM [User] U 
JOIN DBO.ConsultationAnswer CA ON CA.fkiUserId=U.id 
LEFT JOIN UserAdresse UA ON UA.fkiUserId=U.id 
WHERE fkiConsultationSurveyId=37 and fkiConsultationQuestionId=260
')

有什么建議么 ?

您可以這樣做以刪除SQL查詢中的括號:

Select replace(replace(JAnswer,'['),']')
from your table

您的查詢:

SELECT U.iUserSexeType, replace(replace(CA.jAnswer,'['),']') as jAnswer
FROM [User] U 
JOIN DBO.ConsultationAnswer CA ON CA.fkiUserId=U.id 
LEFT JOIN UserAdresse UA ON UA.fkiUserId=U.id 
where fkiConsultationSurveyId=37 
and fkiConsultationQuestionId=260
    df['value'] = df['value'].str[0]

要么:

    df['value'] = df['value'].str.get(0)

https://stackoverflow.com/a/38147471/7853322

暫無
暫無

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

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