2012-12-11 20 views
6

में एक लहर फ़ाइल को संख्या में परिवर्तित करने के लिए कैसे करें मैंने आर में ऑडियो फाइलें लोड की हैं और अब जटिल संख्या के नमूने की एक सूची प्राप्त करना चाहूंगा ताकि मैं नमूने पर एफएफटी और वेवलेट ट्रांसफॉर्म का उपयोग कर सकूं।आर स्टूडियो

आर में काम करने के लिए संख्याओं की सूची कैसे प्राप्त करें? मैंने 'ऑडियो $ डेटा' को आजमाया है, लेकिन त्रुटि संदेश प्राप्त करें क्योंकि एस 4 कक्षा में $ परिभाषित नहीं किया गया है।

किसी भी मदद की अत्यधिक सराहना की जाएगी, धन्यवाद।

+0

SO में आपका स्वागत है! क्या आप कुछ कोड दिखा सकते हैं? – krlmlr

+1

ठीक है, आप एस 4 कक्षा :-) के रूप में 'ऑडियो @ डेटा' को आजमा सकते हैं। लेकिन यह जानना मुश्किल है कि आपने किस प्रकार की फाइल लोड की है और आपने इसे कैसे लोड किया है। –

+0

मैंने अब तक किया है ऑडियो को ऑडियो = readWave ("audio.wav") द्वारा इनपुट करना है – EmmaL

उत्तर

4

tuneR package से readWave साथ फ़ाइल को पढ़ने के बाद, आप कच्चे डेटा का उपयोग करने [email protected] और [email protected] उपयोग कर सकते हैं। उत्तरार्द्ध केवल तभी उपलब्ध होता है जब आपका डेटा स्टीरियो हो। str(audio) आपको किसी ऑब्जेक्ट की संरचना के बारे में विवरण देगा, और यह पता लगाने के लिए बेहद उपयोगी है कि इसमें कौन सा डेटा शामिल है और उस डेटा तक कैसे पहुंचे।

स्पष्ट कारणों से, एक लहर फ़ाइल में डेटा वास्तविक (और वास्तव में यहां तक ​​कि पूर्णांक) भी होगा, इसलिए यदि आपको जटिल संख्या की आवश्यकता है तो आपको उन्हें परिवर्तित करना पड़ सकता है। लेकिन मुझे लगता है कि यदि आप पूर्णांक के वेक्टर पास करते हैं तो ऐसा रूपांतरण स्वचालित रूप से किया जाएगा। सामान्य fft फ़ंक्शन (पैकेज stats से) किसी समस्या के बिना पूर्णांक वेक्टर को संभाल सकता है।