词频统计
词/字符/数字 出现的个数 或者对数据进行归类
```python
s = 'good good study day day up'
print(s)
```
字符出现的个数 字符-个数 ====》 使用字典类型展示数据
思路:
1.遍历字符串 获取每个字符
2.把字符出现的个数存储字典中 字符与个数的信息 【字符为键 个数为值】
把遍历到的字符作为键 个数作为值存放于字典中
```python
count_dict = {} # 空字典 因为不知道最终有多少个键值对
for ch in s: # 遍历获取每个字符
# 逻辑
if ch not in count_dict: # 直接对字典使用成员运算 获取的是键
# 代表第一次出现
count_dict.setdefault(ch, 1)
else:
# 次数+1
count_dict[ch] = count_dict.get(ch) + 1
print(count_dict)
```
归类
```python
nums = [19, 27, 38, 41, 25, 66, 24, 32, 51]
# 偶数为一类 奇数为一类
#字典中会有两组键值对 值为什么是[] 因为偶数是什么 有多少个不知道 奇数是什么 有多少个 也不知道
但是肯定是多个的 所以放一个可变的容器
classify_dict = {'even': [], 'odd': []}
# 遍历
for ele in nums:
if ele % 2 == 0:
classify_dict['even'].append(ele)
else:
classify_dict['odd'].append(ele)
print(classify_dict)
```
每一类的数据的个数
```python
classify_dict1 = {'even': 0, 'odd': 0}
# 遍历
for ele1 in nums:
if ele1 % 2 == 0:
classify_dict1['even'] += 1
else:
classify_dict1['odd'] += 1
print(classify_dict1)
```
练习
```python
1.data="hello nice to meet you nice to meet you too good fine nice"
统计每个单词出现的次数
data="hello nice to meet you nice to meet you too good fine nice"
h=data.split(' ')
dataone={}
for i in h:
if i not in dataone:
dataone.setdefault(i,1)
else:
dataone[i]=dataone.get(i)+1
print(dataone )
```
```python
2.nums=[82,71,65,43,29,72,64,58,87,39]
将十位大于个位的归为一类 另外一种自成一类
num2={'evea':[],'qw':[]}
nums=[82,71,65,43,29,72,64,58,87,39]
for f in nums:
if f//10%10>f%10:
num2['evea'].append(f)
else:
num2['qw'].append(f)
print(num2)
```
字典数据的过滤
```python
dict0 = {'hello': 1, 'nice': 3, 'to': 2, 'meet': 2, 'you': 2, 'too': 1, 'good': 1, 'fine': 1}
print(dict0)
```
找到次数为1的单词信息 以键值对形式展示
```python
new_dict = {}
for k, v in dict0.items():
if v == 1:
new_dict.setdefault(k, v)
print(new_dict)
```
字典推导式 注意:字典中存放的是键值对 key:value
```python
print({k: v for k, v in dict0.items() if v == 1})
```
单词中包含e的词频信息
```python
new_dict1 = {}
for k, v in dict0.items():
if 'e' in k:
new_dict1.setdefault(k, v)
print(new_dict1)
print({k: v for k, v in dict0.items() if 'e' in k})
```