编写一个 Python 程序,该程序读取一个包含数字的列表,然后输出所有数字的平均值、中位数和众数。 [1,2,3,4,5,6,7,8,9,10,10,10]
时间: 2024-01-12 18:05:23 浏览: 31
以下是 Python 代码实现:
```python
from collections import Counter
# 读取数字列表
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10]
# 计算平均值
mean = sum(nums) / len(nums)
print("平均值为:", mean)
# 计算中位数
nums.sort()
n = len(nums)
if n % 2 == 0:
median = (nums[n // 2 - 1] + nums[n // 2]) / 2
else:
median = nums[n // 2]
print("中位数为:", median)
# 计算众数
freq = Counter(nums)
mode = [k for k, v in freq.items() if v == max(list(freq.values()))]
print("众数为:", mode)
```
输出结果为:
```
平均值为: 6.5
中位数为: 6.5
众数为: [10]
```
相关问题
写一个python程序读取CSV,并采用平均值的方式将NAN值进行填充
假设我们有一个名为 `data.csv` 的 CSV 文件,包含了一些数据,其中可能存在一些缺失值。我们可以使用 pandas 库来读取该文件,并采用平均值的方式来填充缺失值。具体的代码如下:
```python
import pandas as pd
# 读取 CSV 文件
df = pd.read_csv('data.csv')
# 计算每列的平均值
mean_values = df.mean()
# 使用平均值填充缺失值
df.fillna(mean_values, inplace=True)
# 输出填充后的结果
print(df)
```
在上面的代码中,我们首先使用 pandas 库的 `read_csv()` 函数读取了 CSV 文件,并将其存储在变量 `df` 中。然后,我们使用 `mean()` 函数计算了每列的平均值,并将其存储在变量 `mean_values` 中。最后,我们使用 `fillna()` 函数将缺失值填充为对应列的平均值,并将修改后的 DataFrame 存储回 `df` 中。最终,我们使用 `print()` 函数输出填充后的结果。
需要注意的是,如果某列中的所有值都是缺失值,那么该列的平均值将为 NaN,此时我们无法采用平均值的方式来填充缺失值。在这种情况下,我们可以考虑使用中位数、众数等方法来填充缺失值。
python对.csv文件的索引列的缺失值使用众数、平均值、中位数进行填充
可以使用pandas库来读取和处理.csv文件。可以使用fillna()方法来填充缺失值,其中可以传入参数来指定填充方式。
例如,使用众数来填充缺失值:
```python
import pandas as pd
# 读取csv文件
df = pd.read_csv('data.csv')
# 使用众数填充缺失值
mode = df['column_name'].mode()[0] # 获取众数
df['column_name'].fillna(mode, inplace=True) # 使用众数填充缺失值
```
使用平均值来填充缺失值:
```python
import pandas as pd
# 读取csv文件
df = pd.read_csv('data.csv')
# 使用平均值填充缺失值
mean = df['column_name'].mean() # 获取平均值
df['column_name'].fillna(mean, inplace=True) # 使用平均值填充缺失值
```
使用中位数来填充缺失值:
```python
import pandas as pd
# 读取csv文件
df = pd.read_csv('data.csv')
# 使用中位数填充缺失值
median = df['column_name'].median() # 获取中位数
df['column_name'].fillna(median, inplace=True) # 使用中位数填充缺失值
```
其中,'column_name'需要替换为需要填充缺失值的列名。