Python 如果将%转换为浮点(除以100),我希望它是带%符号的字符串
这是代码,这是代码 我想做的是,我想把Python 如果将%转换为浮点(除以100),我希望它是带%符号的字符串,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,这是代码,这是代码 我想做的是,我想把字符串列读为str,其他列读为pandas 这是我得到的输出 import pandas as pd df = pd.read_excel('Test.xlsx', dtype={'String Column': str}) print(df) 我想要的输出: Percentage Column String Column 0 0.05 0.02 1 45.00
字符串列
读为str,其他列读为pandas
这是我得到的输出
import pandas as pd
df = pd.read_excel('Test.xlsx', dtype={'String Column': str})
print(df)
我想要的输出:
Percentage Column String Column
0 0.05 0.02
1 45.00 0.05
2 39.00 44
我在代码行中为此尝试了很多方法:
Percentage Column String Column
0 0.05 2
1 45.00 5
2 39.00 44
为什么不在此处使用
pandas.apply()
df = pd.read_excel('Test.xlsx', converters={'String Column': str})
df = pd.read_excel('Test.xlsx', dtype={'String Column': object})
df = pd.read_excel('Test.xlsx', dtype=str)
data=[[1'、.02、.04]、[2'、.05,44]]
df=pd.DataFrame(数据,列=['col1','col2','col3']
def_自_浮动(x):
如果x我认为问题在于你的excel文件
熊猫中的数据类型正常
data=[['1',.02,.04],['2',.05,44]]
df = pd.DataFrame(data,columns=['col1','col2','col3'])
def _from_float(x):
if x<1: return x*100
else : return x
df['col3'] = df['col3'].apply(_from_float).astype(int) ## or use str
结果
import pandas as pd
df = pd.read_excel('Test.xlsx', dtype={'String Column': str})
print(df.dtypes)
print()
print(df)
但是Excel文件默认情况下已将单元格配置为百分比
PD:Porcentaje=百分比
您可以在Excel中设置文本字符串=“2%”
再次保存运行。
我只放了2%,但你可以放你想要的,int
等等
Percentage Column float64
String Column object
dtype: object
Percentage Column String Column
0 0.05 0.02
1 45.00 0.05
2 39.00 44
如果我的答案对您有帮助,请不要忘记批准或投票,否则请发表评论以改进答案。
Percentage Column float64
String Column object
dtype: object
Percentage Column String Column
0 0.05 2%
1 45.00 5%
2 39.00 44