df['Valuation ($B)'] = df['Valuation ($B)'].astype(str).str.replace('$','') df['Total Raised'] = df['Total Raised'].astype(str).str.replace('$','') def convert_value(value): if isinstance(value, str): if value.endswith('B'): return int(float(value[:-1])) * 1000000000 elif value.endswith('M'): return int(float(value[:-1])) * 1000000 elif value.endswith('K'): return int(float(value[:-1])) * 1000 return value #df['Total Raised'] = df['Total Raised'].apply(convert_value) df['Total Raised'] = pd.to_numeric(df['Total Raised'], errors='coerce') df['Total Raised'] = df['Total Raised'].apply(lambda x: x / 1000000)代码total raised变成空值了为什么
时间: 2023-08-06 14:07:42 浏览: 39
在你的代码中,你将`df['Total Raised']`中的美元符号用空字符串替换,并将其转换为字符串类型。接下来,你定义了一个`convert_value`函数,它将字符串转换为数字,并将数字乘以适当的倍数,以便在所有情况下都将其转换为美元。然后,你尝试将`df['Total Raised']`应用于`convert_value`函数,但是在这里你注释掉了该行。
接下来,你使用`pd.to_numeric`将`df['Total Raised']`转换为数字,但是如果无法将字符串转换为数字,则会出现错误,并将其设置为缺失值。最后,你将`df['Total Raised']`中的所有值除以1,000,000以将其转换为以百万美元为单位的值。
在你的代码中,如果`df['Total Raised']`中的字符串不以B、M或K结尾,那么`convert_value`函数将返回原始字符串本身。如果原始字符串不是一个数字字符串,那么它将被传递到`pd.to_numeric`函数,并且由于它无法转换为数字,因此将被转换为缺失值。因此,请确保`df['Total Raised']`中的所有值都是数字字符串,以便正确地将其转换为浮点数。
相关问题
sns.scatterplot(x=df2['Total Raised ($B)'], y=df2['Valuation ($B)'], hue=df2['Investors Count']) plt.show()为什么散点图里一个散点都没有
可能有几个原因导致散点图里没有点:
1. 数据集中的 'Total Raised ($B)' 或 'Valuation ($B)' 列可能没有数据,或者数据不完整,导致没有散点显示。
2. 数据集中的 'Investors Count' 列可能只有一种值,导致无法显示不同的颜色,从而看不到任何散点。
3. 在代码中可能存在其他错误,例如缺少导入库或语法错误等,导致散点图无法正确显示。
您可以检查一下数据集中是否存在上述问题,或者提供更多的代码和数据信息,以便我们更好地帮助您解决问题。
# Generate the pivot table, containing all variables table = pd.pivot_table(df2, values=['Valuation ($B)'], index=['Total Raised ($B)'], columns=['Industry']) # Generated correlation matrix corr = table.corr() # Drawing heat map sns.heatmap(corr, cmap='coolwarm') plt.show() plt.save('11')设置图片保存到桌面
你可以使用以下代码将图片保存到桌面:
```python
import os
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# Generate the pivot table, containing all variables
table = pd.pivot_table(df2, values=['Valuation ($B)'], index=['Total Raised ($B)'], columns=['Industry'])
# Generated correlation matrix
corr = table.corr()
# Drawing heat map
sns.heatmap(corr, cmap='coolwarm')
plt.show()
# Save figure to desktop
desktop_path = os.path.join(os.path.join(os.environ['USERPROFILE']), 'Desktop') # Get desktop path
plt.savefig(os.path.join(desktop_path, '11.png'))
```
这段代码会将生成的图片保存为 "11.png" 并放在你的桌面上。如果你需要保存为其他格式,只需将 `.png` 替换为其他格式的扩展名即可。