我需要在列表中找到元素的频率
a = [1,1,1,1,2,2,2,2,3,3,4,5,5]
Run Code Online (Sandbox Code Playgroud)
输出 - >
b = [4,4,2,1,2]
Run Code Online (Sandbox Code Playgroud)
另外我想从a中删除重复项
a = [1,2,3,4,5]
Run Code Online (Sandbox Code Playgroud) 假设我想计算每组中不同值的比例.例如,使用所述mtcars数据,如何计算相对数量的频率齿轮由点(自动/手动)一气呵成与dplyr?
library(dplyr)
data(mtcars)
mtcars <- tbl_df(mtcars)
# count frequency
mtcars %>%
group_by(am, gear) %>%
summarise(n = n())
# am gear n
# 0 3 15
# 0 4 4
# 1 4 8
# 1 5 5
Run Code Online (Sandbox Code Playgroud)
我想要实现的目标:
am gear n rel.freq
0 3 15 0.7894737
0 4 4 0.2105263
1 4 8 0.6153846
1 5 5 0.3846154
Run Code Online (Sandbox Code Playgroud) 今天最后一个新手大熊猫问题:如何为单个系列生成一个表?
例如:
my_series = pandas.Series([1,2,2,3,3,3])
pandas.magical_frequency_function( my_series )
>> {
1 : 1,
2 : 2,
3 : 3
}
Run Code Online (Sandbox Code Playgroud)
很多谷歌搜索让我进入了Series.describe()和pandas.crosstabs,但这些都不是我需要的:一个变量,按类别计算.哦,如果它适用于不同的数据类型会很好:字符串,整数等.
我有多个列分隔的制表符分隔文件.我想计算文件夹中所有文件的列中不同值的出现频率,并按递减顺序对它们进行排序(最高计数优先).如何在Linux命令行环境中完成此操作?
它可以使用任何常见的命令行语言,如awk,perl,python等.
我是Pandas的新手,我正在尝试使用date_range.我碰到各种各样的好东西来的freq,就像BME和BMS我希望能够快速查找正确的字符串来获得我想要的东西.昨天我在文档的某个地方找到了一个格式很好的表格,但是表格的标题太过于迟钝,以至于我今天无法使用搜索找到它.
我使用的是Python 3.3
我需要创建两个列表,一个用于单词,另一个用于单词的频率.
我必须根据频率列表对唯一单词列表进行排序,以便具有最高频率的单词在列表中排在第一位.
我有文本设计但不确定如何在Python中实现它.
到目前为止我找到的方法使用了Counter我们还没有学过的字典或字典.我已经从包含所有单词的文件中创建了列表,但不知道如何查找列表中每个单词的频率.我知道我需要一个循环才能做到这一点,但无法弄明白.
这是基本设计:
original list = ["the", "car",....]
newlst = []
frequency = []
for word in the original list
if word not in newlst:
newlst.append(word)
set frequency = 1
else
increase the frequency
sort newlst based on frequency list
Run Code Online (Sandbox Code Playgroud) 我有一份清单
[[12, 6], [12, 0], [0, 6], [12, 0], [12, 0], [6, 0], [12, 6], [0, 6], [12, 0], [0, 6], [0, 6], [12, 0], [0, 6], [6, 0], [6, 0], [12, 0], [6, 0], [12, 0], [12, 0], [0, 6], [0, 6], [12, 6], [6, 0], [6, 0], [12, 6], [12, 0], [12, 0], [0, 6], [6, 0], [12, 6], [12, 6], [12, 6], [12, 0], [12, 0], [12, 0], [12, 0], [12, 6], [12, 0], [12, 0], [12, …Run Code Online (Sandbox Code Playgroud) 我是一个蟒蛇新手,所以也许我的问题非常棒.假设我有一个单词列表,我想找到每个单词出现在该列表中的次数.明显的做法是:
words = "apple banana apple strawberry banana lemon"
uniques = set(words.split())
freqs = [(item, words.split().count(item)) for item in uniques]
print(freqs)
Run Code Online (Sandbox Code Playgroud)
但是我发现这个代码不是很好,因为这种方式程序运行两次单词列表,一次构建集合,第二次计算出现次数.当然,我可以编写一个函数来运行列表并进行计数,但这不会那么pythonic.那么,有更高效和pythonic的方式吗?
我有一个数据框,我想知道给定列有多少次具有最频繁的值.
我试着用以下方式做到这一点:
items_counts = df['item'].value_counts()
max_item = items_counts.max()
Run Code Online (Sandbox Code Playgroud)
结果我得到:
ValueError: cannot convert float NaN to integer
Run Code Online (Sandbox Code Playgroud)
据我所知,在第一行我得到的系列中,列的值被用作键,这些值的频率被用作值.所以,我只需要找到该系列中最大的值,并且由于某种原因,它不起作用.有谁知道如何解决这个问题?
我目前正在尝试使用Android实现一些代码,以检测何时通过手机的麦克风播放多个特定的音频范围.我已经使用AudioRecord类设置了类:
int channel_config = AudioFormat.CHANNEL_CONFIGURATION_MONO;
int format = AudioFormat.ENCODING_PCM_16BIT;
int sampleSize = 8000;
int bufferSize = AudioRecord.getMinBufferSize(sampleSize, channel_config, format);
AudioRecord audioInput = new AudioRecord(AudioSource.MIC, sampleSize, channel_config, format, bufferSize);
Run Code Online (Sandbox Code Playgroud)
然后读入音频:
short[] audioBuffer = new short[bufferSize];
audioInput.startRecording();
audioInput.read(audioBuffer, 0, bufferSize);
Run Code Online (Sandbox Code Playgroud)
执行FFT是我陷入困境的地方,因为我在这方面的经验很少.我一直在尝试使用这个类:
然后我发送以下值:
Complex[] fftTempArray = new Complex[bufferSize];
for (int i=0; i<bufferSize; i++)
{
fftTempArray[i] = new Complex(audio[i], 0);
}
Complex[] fftArray = fft(fftTempArray);
Run Code Online (Sandbox Code Playgroud)
这可能很容易让我误解了这个课程是如何工作的,但是返回的值跳到了整个地方,即使在沉默中也不代表一致的频率.是否有人知道执行此任务的方法,或者我是否过于复杂化以尝试仅抓取少量频率范围而不是将其绘制为图形表示?