从DataFrame / csv中删除空格

时间:2020-10-26 22:26:56

标签: python pandas beautifulsoup

我想将2个DataFrame包含到1个csv中。

我的代码运行并打印出2个数据框,但是我想删除D,E.F列第2行中的空白,以便第3行中的信息显示在其标题的正下方。

数据是正确的,所有,只是格式是我在这里的问题。

(如果您运行代码,这非常小文件,这将很有意义)

{{1}}

2 个答案:

答案 0 :(得分:1)

您可以将pd.concataxis=1参数一起使用:

import pandas as pd
from bs4 import BeautifulSoup
import csv
import requests

line1=[]

url='https://clinicaltrials.gov/ct2/show/NCT03548207'
r=requests.get(url)
soup=BeautifulSoup(r.content,'html.parser')
content=soup.find_all('div',id='main-content')
for item in content:
    title=item.find('h1',class_='tr-h1 ct-sans-serif tr-solo_record').text
    sponsor=item.find('div', class_='tr-info-text').text
    summary=item.find('div',class_='ct-body3 tr-indent2').text
    dict={'Title':title,'Sponsor':sponsor,'Summary':summary}
    line1.append(dict)

df=pd.DataFrame(line1)


url2='https://clinicaltrials.gov/ct2/show/NCT03548207'
table1=pd.read_html(url2)[2]
dj=pd.DataFrame(table1)

kk = pd.concat([df, dj], axis=1)  # <--- pd.concat
print(kk)
kk.to_csv('data.csv', index=False)

打印:

                                               Title  ...             Phase
0  A Study of JNJ-68284528, a Chimeric Antigen Re...  ...  Phase 1  Phase 2

[1 rows x 6 columns]

并保存data.csv(来自LibreOffice的屏幕截图):

enter image description here

答案 1 :(得分:0)

轮班能解决您的问题吗?

import pandas as pd

df = pd.DataFrame({"a":[0,1,2,3,4,5], 'b':[10, None, 12, 13, 14, 15], 'c':[20, None, 22, 23, 24, 25]})
df.loc[1:,'b':'c']=df.loc[1:,'b':'c'].shift(-1)
print(df)